Здравствуйте, подскажите пожалуйста, как настроить nginx и CGI server на python 3.5?
Пытаюсь так, не очень получается.
Из браузера задаю http://домен/python/cgi-bin/hello.py
Nginx работает, так как у меня там и другие локации прописаны
Настройка из nginx
location /python {
proxy_pass http://localhost:8000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
charset utf-8;
}
сервер запущен сл командой. Когда идет запрос извне, то он реагирует, но говорит что не нашел страничку. Что-то не так в конфигурации..
@jdev:/var/www/python# python3 -m http.server --cgi
127.0.0.1 - - [10/Jul/2016 08:46:52] code 404, message File not found
127.0.0.1 - - [10/Jul/2016 08:46:52] "GET /python/cgi-bin/hello.py HTTP/1.1" 404 -
127.0.0.1 - - [10/Jul/2016 08:47:34] code 404, message File not found
127.0.0.1 - - [10/Jul/2016 08:47:34] "GET /python/cgi-bin/hello.py HTTP/1.1" 404 -
/var/www/python/server.py
from http.server import HTTPServer, CGIHTTPRequestHandler
server_address = ("localhost", 8000)
httpd = HTTPServer(server_address, CGIHTTPRequestHandler)
httpd.serve_forever()
если с командной строки на сервере, то получаю 403, но это уже совершенно другая проблема.
@jdev:~# curl http://localhost:8000/cgi-bin/hello.py
//http server log
127.0.0.1 - - [10/Jul/2016 08:47:49] code 403, message CGI script is not executable ('/cgi-bin/hello.py')
127.0.0.1 - - [10/Jul/2016 08:47:49] "GET /cgi-bin/hello.py HTTP/1.1" 403 -
Вопрос.
1. Как подкорректировать файлы конфигураций чтоб запросы извне нормально проходили?
2. Как запустить http.server как постоянную службу и как его конфигурировать?
Спасибо.