Я пытаюсь настроить сервер Ubuntu, на котором могут размещаться приложения Python. У него есть веб-сервер nginx. Я довольно новичок в этих технологиях.
Мне удалось настроить nginx для обслуживания статических html-файлов, но у меня возникла проблема с настройкой Python. То, что я получаю, это то, что он не может найти страницы (например, ошибка 404).
Я следовал инструкциям по следующему URL:
https://www.digitalocean.com/community/tutorials/how-to-set-up-uwsgi-and-nginx-to-serve-python-apps-on-ubuntu-14-04
Мой пример приложения очень похож на пример, который у них есть, за исключением того, что я назвал его app.py и скопировал его в папку "/srv/www/gobid/live".
Мой код "app.py" выглядит следующим образом:
def application(env, start_response):
start_response('200 OK', [('Content-Type','text/html')])
return "Hello World From Digital Ocean"
В "/ etc / nginx / sites-enabled /" у меня есть один файл конфигурации, который выглядит следующим образом:
server {
listen 80;
root /srv/www/gobid/live;
index index.html index.htm test.html;
# Make site accessible from http://localhost/
# server_name localhost;
server_name 10.220.200.11;
access_log /var/log/nginx/gobid.access.log main;
error_log /var/log/nginx/gobid.error.log;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to index.html
try_files $uri $uri/ /index.html;
# Uncomment to enable naxsi on this location
# include /etc/nginx/naxsi.rules
#include uwsgi_params;
#uwsgi_pass /srv/www/gobid/live/myapp.sock;
}
location /doc/ {
alias /usr/share/doc/;
autoindex on;
allow 127.0.0.1;
deny all;
}
location /hello/ {
include uwsgi_params;
# uwsgi_pass 127.0.0.1:9090;
}
}
Я пытался создать сокет, но это привело к тому, что nginx больше не обслуживал статические страницы. Я настроил URL "10.220.200.11", чтобы он указывал на сайт.
Когда я набираю "http://10.220.200.11/",, статическая страница отображается правильно.
Я хочу, чтобы "http://10.220.200.11/hello/" возвращал контент, обслуживаемый app.py (в данном случае это будет" Hello World From Digital Ocean "), но вместо этого он говорит, что файл не найден. (Статический page и app.py находятся в одном каталоге).