Проблема с Django, использующим Apache2 (mod_wsgi), иногда «не может импортировать из модуля» без видимой причины - PullRequest
2 голосов
/ 20 сентября 2010

Я поместил свой веб-сайт Django на свой веб-сервер и настроил его с помощью apache2 и mod_wsgi .. в большинстве случаев все работает нормально, но иногда он просто выдает ошибку, что не может импортировать модуль ( обычно из моего файла просмотров). Тем не менее, это не проблема с этим модулем, так как он обычно работает, например, я получу ошибку «Невозможно импортировать имя класса из модуля» один раз, затем перезагрузите страницу, и она работает нормально, я бы сказал, что это примерно 1 из 10 страниц загружается там, где это происходит, и это просто случайно, как это произойдет для любой страницы моего сайта.

Я попытался перезапустить apache2, перезапустить сервер, но проблема остается. Я пробовал это на разных клиентских машинах, очищал пользовательский кеш и т. Д., Но проблема остается. Я не знаю, что может делать это, возможно, какое-то кэширование поможет предотвратить это, так как кажется, что на сервере просто возникает проблема, из-за которой иногда не удается полностью обработать запрос. Я использую облако, настроенное на сервере с небольшим объемом памяти, так что, может быть, в этом проблема? Любой совет ценится

1 Ответ

1 голос
/ 20 сентября 2010

Это работает большую часть времени, потому что у вас, вероятно, есть конфигурация с несколькими процессами, и затрагивается только один из процессов.

Вы можете попробовать альтернативный файл сценария WSGI, как описано в:

http://blog.dscpl.com.au/2010/03/improved-wsgi-script-for-use-with.html

До сих пор не решено, в чем проблема - в разнице между сервером разработки и правильными системами развертывания, использующими WSGI, или в том, что пользователи не обрабатывают импорт должным образом и не вызывают зависимости порядка или даже циклы импорта. Проблемы, возможно, возникают только при посещении URL в определенном порядке и, следовательно, в зависимости от того, когда это может произойти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...