Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: nginx + python 3.5 CGI server as service?  (Прочитано 992 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн JDev

  • Автор темы
  • Участник
  • *
  • Сообщений: 103
    • Просмотр профиля
nginx + python 3.5 CGI server as service?
« : 10 Июль 2016, 10:06:28 »
Здравствуйте, подскажите пожалуйста, как настроить 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 как постоянную службу и как его конфигурировать?

Спасибо.


Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 14921
  • Я не слышу.
    • Просмотр профиля
Re: nginx + python 3.5 CGI server as service?
« Ответ #1 : 10 Июль 2016, 10:34:51 »
/var/www/python/server.py
выполнить в команду, что выдаёт?
~.o

Оффлайн JDev

  • Автор темы
  • Участник
  • *
  • Сообщений: 103
    • Просмотр профиля
Re: nginx + python 3.5 CGI server as service?
« Ответ #2 : 10 Июль 2016, 13:17:45 »
/var/www/python/server.py
выполнить в команду, что выдаёт?

@jdev:/var/www/python# /var/www/python/server.py
-bash: /var/www/python/server.py: Permission denied

Дело может быть еще в том, что у меня 2 версии питона. Был, 2.7, до более новой под debian обновиться не смог, поэтому таким макокром установил 3.5 и поменял

sudo apt-get install libssl-dev openssl
wget https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tgz
tar xzvf Python-3.5.0.tgz
cd Python-3.5.0
./configure
apt-get install build-essential (optional)
make
sudo make install

alias python=/usr/local/bin/python3.5

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 14921
  • Я не слышу.
    • Просмотр профиля
Re: nginx + python 3.5 CGI server as service?
« Ответ #3 : 10 Июль 2016, 14:56:17 »
зачем аерсия?
что не работает?
~.o

Оффлайн JDev

  • Автор темы
  • Участник
  • *
  • Сообщений: 103
    • Просмотр профиля
Re: nginx + python 3.5 CGI server as service?
« Ответ #4 : 10 Июль 2016, 19:28:43 »
На работает запрос извне. Описал все в первом посте.
И второй вопрос был. Как запустить http.server как постоянную службу и как его конфигурировать?

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 14921
  • Я не слышу.
    • Просмотр профиля
Re: nginx + python 3.5 CGI server as service?
« Ответ #5 : 11 Июль 2016, 00:39:03 »
Цитировать
-bash: /var/www/python/server.py: Permission denied
я знаю, короче начало.
~.o

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 26062
    • Просмотр профиля
Re: nginx + python 3.5 CGI server as service?
« Ответ #6 : 11 Июль 2016, 04:51:35 »
На работает запрос извне. Описал все в первом посте.
И второй вопрос был. Как запустить http.server как постоянную службу и как его конфигурировать?
Вернитесь к документации и поймите наконец, что вы делаете.
Я бы ещё понял, если бы документация была на английском, но - вот ведь прикол, документация на nginx есть на русском… Причём это язык оригинала, а не перевод.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

 

Страница сгенерирована за 0.064 секунд. Запросов: 24.