В одной хостинговой компании они запускали проекты Python с помощью fcgi. Они настроили его так, что, когда я изменил файл django.fcgi, который поместил django и мой проект в pythonpath, мой код проекта был мгновенно перекомпилирован.
Из-за этого друг настроил хостинг для нашего общего проекта на своем сервере с помощью fastcgi. Он был настроен, и скрипты python выполняются должным образом, но мы не знаем, как его настроить так, чтобы мой проект был перекомпилирован при изменении моего установочного файла.
Алан
Ты используешь mod_fastcgi
или mod_fcgid
? В любом случае, вы должны просто убить процесс fastcgi (или заставить процесс совершить «самоубийство»), и apache возродит другой, загрузив новый файл. я использую mod_fastcgi
, и вот что я вижу:
0> ps -ef | grep fcgi
www-data 687 683 0 09:39 ? 00:00:00 /usr/sbin/fcgi-pm -k start
www-data 1037 687 0 09:41 ? 00:00:00 /usr/bin/python /var/www/wsgi/fcgi.py
www-data 1038 1037 0 09:41 ? 00:00:00 /usr/bin/python /var/www/wsgi/fcgi.py
www-data 1039 1037 0 09:41 ? 00:00:00 /usr/bin/python /var/www/wsgi/fcgi.py
0> sudo kill 1037
0> ps -ef | grep fcgi
www-data 687 683 0 09:39 ? 00:00:00 /usr/sbin/fcgi-pm -k start
www-data 1142 687 2 09:43 ? 00:00:00 /usr/bin/python /var/www/wsgi/fcgi.py
www-data 1143 1142 0 09:43 ? 00:00:00 /usr/bin/python /var/www/wsgi/fcgi.py
www-data 1144 1142 0 09:43 ? 00:00:00 /usr/bin/python /var/www/wsgi/fcgi.py
Если вы используете внешний сервер, вам необходимо перезапустить сервер fastcgi. Это официальная документация по перезагрузке приложения в fastcgi: http://www.fastcgi.com/docs/faq.html#application_reload