Web2py - 部署

在 Ubuntu (Linux) 中安装 web2py

以下步骤是在 Ubuntu 桌面上安装 web2py 时实现的。

步骤 1 − 下载 web2py

cd /home
mkdir www-dev

cd www-dev
wget http://www.web2py.com/examples/static/web2py_src.zip

步骤 2 − 下载完成后,解压。

unzip -x web2py_src.zip

步骤 3 − 如果您需要访问 GUI,可以选择安装 Python 的 tk 库。

sudo apt-get install python-tk

步骤 4 − To 启动web2py,进入web2py目录并运行web2py。

cd web2py
python web2py.py

GUI 将如下所示 −

Web2py 服务器

安装后,每次运行时,web2py 都会要求您选择密码。 该密码是您的管理密码。 如果密码留空,管理界面将被禁用。

服务器启动后,web2py 将重定向到具有以下提到的 URL 的屏幕 − http://127.0.0.1:8000/

这将得出结论 web2py 在 Ubuntu 桌面上完美运行。

Ubuntu 中的生产部署

步骤 1 − 安装运行 web2py 所需的所有模块。

安装 postgreSQL

sudo apt-get install postgresql

解压并打开ssh-server

sudo apt-get install unzip
sudo apt-get install openssh-server

安装 Apache 2 和 mod-wsgi

sudo apt-get install apache2
sudo apt-get install libapache2-mod-wsgi

步骤 2 − 在 /home/www-data 中安装 web2py

这有助于在生产环境中正确部署。

sudo apt-get install unzip
sudo apt-get install openssh-server
cd /home
sudo mkdir www-data
cd www-data

从 web2py 站点获取 web2py 源代码 −

sudo wget http://web2py.com/examples/static/web2py_src.zip
sudo unzip web2py_src.zip
sudo chown -R www-data:www-data web2py

步骤 3 − 创建自签名证书。 SSL 证书应从受信任的证书颁发机构获取。 维护一个包含证书的 SSL 文件夹。

步骤 4 − 根据生产环境的要求编辑apache配置。

步骤 5 − 重新启动 Apache 服务器并验证生产环境是否适用于给定的 IP 地址。

在 Windows 上安装 web2py

尽管有适用于 Windows 环境的二进制发行版(打包可执行文件和标准库),但 web2py 是开源的,并且可以与普通的 Python 安装一起使用。

此方法允许使用最新版本的 web2py,并自定义要使用的 python 模块。

步骤 1 − 从web2py官网下载源码包 − http://www.web2py.com/examples/static/web2py_src.zip and unzip it.

由于 web2py 不需要安装,用户可以将其解压到任意文件夹中。

步骤 2 − 要启动它,请双击 web2py.py。 从控制台 −

cd c:\web2py
c:\python27\python.exe web2py.py

步骤 3 − 这里可以添加命令行参数(−a 设置管理员密码,−p 指定备用端口)。 启动选项通过可见 −

C:\web2py>c:\python27\python.exe web2py.py --help

注意

  • web2py 是用 Python 编写的,Python 是一种可移植的、解释性的动态语言,不需要编译或复杂的安装即可运行。

  • 它使用虚拟机(例如 Java 和 .Net),并且可以在运行脚本时透明地动态字节编译源代码。

web2py 中用于数据库和测试的功能

这是一个名为SQLDesigner的软件,它有助于制作web2py模型并生成相应的代码。 下面给出了一些屏幕截图 −

SQL 设计器

SQLDesigner 有助于以简单的方式维护表的关系,并在给定应用程序的模型中生成相应的代码。

SQL 设计器表

功能测试

功能测试涉及组件或整个系统的功能测试。 它可以基于需求和业务流程。

web2py 附带一个模块 gluon.contrib.webclient,它在远程和本地 web2py 应用程序中执行功能测试。 它基本上是为了理解 web2py 会话和回传而设计的。

它所需要的只是导入包,以便在给定模块上实现功能测试。

导入包的语法如下 −

from gluon.contrib.webclient import WebClient