Как получить базовый сервер web2py и запустить его PythonAnywhere?
Как развернуть web2py на PythonAnywhere?
Ответ 1
[update - 29/05] Теперь у вас есть большая кнопка на вкладке в Интернете, которая сделает все это для вас. Просто нажмите, где он говорит Web2Py, введите свой пароль администратора, и вы хорошо пойдете.
Здесь старый материал для исторического интереса...
Я разработчик PythonAnywhere. Мы не являемся крупными экспертами по web2py (пока?), Но мне удалось запустить web2py и работать следующим образом:
Сначала загрузите и распакуйте web2py:
wget http://www.web2py.com/examples/static/web2py_src.zip
unzip web2py_src.zip
Перейдите на панель "Интернет" PythonAnywhere и отредактируйте свой 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()
Спасибо Хуану Мартинесу за его инструкции по этой части, которые вы можете посмотреть здесь: http://web2py.pythonanywhere.com/
затем откройте консоль Bash и cd
в основной папке web2py
, затем запустите
python web2py.py --port=80
введите пароль администратора
нажмите ctrl-c
(это приведет к созданию конфигурационного файла parameters_80.py
)
затем перейдите на свою веб-панель в PythonAnywhere, нажмите перезагрузить веб-приложение, и все должно работать!
Ответ 2
Вы также можете просто запустить этот bash script:
admin будет отключен из-за отсутствия HTTPS, если вы не обходите его, как в предыдущем сообщении. Это создаст уязвимость безопасности.
Ответ 3
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)"
Ответ 4
Недавно я обобщил свой опыт развертывания Web2Py на PythonAnywhere here
Надеюсь, что это поможет NeoToren
Ответ 5
Я попытаюсь добавить что-то новое в обсуждение. ЛУЧШИЙ способ, который я нашел, - это пойти сюда, когда вы не вошли в систему. Это делает так, что вам не нужно возиться с терминалом:
https://www.pythonanywhere.com/try-web2py
Придумайте доменное имя, после чего вы перейдете на страницу с информацией о вашем логине и создайте панель мониторинга для этого домена. Оттуда просто создайте учетную запись, чтобы ваше приложение не стиралось через 24 часа. Когда вы регистрируетесь, ваше приложение имеет срок действия 3 месяца (если вы не платите). Я считаю, что это новая политика. Затем просто перейдите в https://appname.pythonanywhere.com/admin, а затем введите пароль, который вы предоставили, а затем загрузите файл Web2Py в панель инструментов, а затем зайдите на страницу.
Я не уверен, как загрузить приложение Web2Py в PythonAnywhere для существующей учетной записи, но это самый простой метод, который я нашел.