Как эффективный способ сделать PHP-интерфейс для проекта Django (который работает через cgi)? - PullRequest
2 голосов
/ 08 сентября 2010

Я хочу разработать сайт в Django, иметь удобный ORM и администратора, чтобы облегчить администрирование.

Однако, единственный вариант хостинга, который у меня есть, это , запускающий Django через CGI ,Поэтому я также хотел бы сделать в PHP интерфейс «только для чтения», который сделает работу «нормальной» для повседневного использования (т. Е. Только редактирование [базы данных] и аутентификация будут выполняться через Django / admin).

Каков эффективный подход (если таковой имеется) для максимизации (общей достигнутой) производительности, особенно в отношении аутентификации через интерфейс PHP и Django?

1 Ответ

2 голосов
/ 25 января 2011

По сути, вы хотите использовать Django для аутентификации администратора и пользователя. Правильно?

Это должно работать хорошо. На самом деле речь идет о том, что я делаю сейчас, поскольку мы смешиваем унаследованный сайт PHP (активный, которым пользуются тысячи каждый день) с новыми функциями, использующими Django.

Я использовал Django раньше только для администратора, и он прекрасно работает. Я настраивал таблицы БД вручную в MySQL и обращался к ним, как обычно, через PDO в PHP. Я продублировал схему в модели Django и настроил администратора - она ​​отлично работает.

Аутентификация сложнее. Мы тоже это делаем. Я на самом деле нашел этот вопрос, потому что я искал опыт других с этим!

Я думаю, лучший способ сделать это - просто сохранить идентификатор вошедшего в систему пользователя в файле cookie, когда пользователь входит в систему через Django. Зашифруйте куки, и вы сможете получить идентификатор и / или другую информацию в PHP. Удалите куки при выходе, и все должно быть готово. К сожалению, вы не сможете использовать сессии Django. Вы можете связать это с PHP-сессиями.

Во всяком случае, я вижу, что этот вопрос был некоторое время назад. Если вы решили это для себя, пожалуйста, вернитесь и дайте нам знать, как все прошло!

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