如何在 PythonAnywhere上启动并运行基本的 web2py 服务器?
5 回答
[更新 - 29/05] 我们现在在 Web 选项卡上有一个大按钮,它将为您完成所有这些工作。只需单击显示 Web2Py的位置,填写您的管理员密码,就可以开始了。
这是具有历史意义的旧东西...
我是一名 PythonAnywhere 开发人员。我们不是大量的 web2py 专家(还没有?),但我已经设法让 web2py 像这样启动并运行:
首先下载并解压 web2py:
wget http://www.web2py.com/examples/static/web2py_src.zip
unzip web2py_src.zip
转到 PythonAnywhere“Web”面板并编辑您的wsgi.py
. 添加这些行:
import os
import sys
path = '/home/my_username/web2py'
if path not in sys.path:
sys.path.append(path)
from wsgihandler import application
替换my_username
为您的用户名。
您还需要注释掉wsgi.py 中的最后两行,其中我们有默认的 hello world web.py 应用程序...
# comment out these two lines if you want to use another framework
#app = web.application(urls, globals())
#application = app.wsgifunc()
感谢 Juan Martinez 对这部分的说明,您可以在此处查看: http ://web2py.pythonanywhere.com/
然后打开一个Bash控制台,cd
进入主web2py
文件夹,然后运行
python web2py.py --port=80
输入管理员密码
按 ctrl-c
(这将生成parameters_80.py
配置文件)
然后转到 PythonAnywhere 上的Web面板,单击reload web app,一切正常!
Pastebin 宕机了,我从缓存中检索到了这个。
cd ~
wget -O web2py_srz.zip http://web2py.com/examples/static/web2py_src.zip
unzip web2py_src.zip
echo "
PATH = '/home/"`whoami`"/web2py'
import os
import sys
sys.stdout = sys.stderr
os.chdir(PATH)
if not './' in sys.path[:1]: sys.path.insert(0,'./')
from gluon.main import wsgibase as application
" > /var/www/wsgi.py
cd web2py
python -c "from gluon.main import save_password; save_password(raw_input('admin password: '),433)"
我最近在这里总结了我在 PythonAnywhere 上部署 Web2Py 的经验
希望对 NeoToren 有所帮助
我会尝试在讨论中添加一些新内容。我发现的最简单的方法是在您未登录时转到此处。这样您就不必乱用终端了:
https://www.pythonanywhere.com/try-web2py
想出一个域名,然后您将被重定向到显示您的登录信息的页面并为该域创建仪表板。从那里创建一个帐户,这样您的应用程序就不会在 24 小时后被删除。当您注册时,您的应用有 3 个月的有效期(如果您不付款)。我相信这是一项新政策。然后只需转到https://appname.pythonanywhere.com/admin,然后输入您提供的密码,然后将您的 Web2Py 文件上传到仪表板,然后访问该页面。
我不确定如何在 PythonAnywhere 上为现有帐户上传 Web2Py 应用程序,但这是我找到的最简单的方法。