Web2py部署


在Ubuntu中安装web2py(Linux)

以下步骤在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步 - 要启动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 下载源码包并解压缩。

由于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编写的,这是一种便携式,解释型和动态语言,不需要编译或复杂的安装即可运行。

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

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

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

SQL设计器

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

SQL设计器表

功能测试

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

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

它只需要导入包,以便在给定模块上执行功能测试。

导入包的语法如下 -

from gluon.contrib.webclient import WebClient