到目前为止,在我们的实例中,都是使用 Django 开发的web服务器。但这种服务器只是用于测试和不适合生产环境。一旦程序发布投入生产,就需要如Apache,Nginx等一个真正的服务器,我们在这一节中讨论Apache的配置。
服务Django应用程序是通过Apache使用mod_wsgi的完成。 因此,第一件事情就是要确保你已经安装了Apache和mod_wsgi。请记住,当我们创建我们的项目,项目结构它看起来应该如下所示 -
# Filename : example.py # Copyright : 2020 By Nhooo # Author by : www.cainiaoplus.com # Date : 2020-08-08 myproject/ manage.py myproject/ __init__.py settings.py urls.py wsgi.py
wsgi.py文件是一个考虑Django和Apache之间的联系和处理。
比方说,我们希望分享项目(myproject)在Apache中。 我们只需要设置Apache来访问这个文件夹。假设我们把myproject的文件夹在 "/var/www/html". 在此阶段,访问该项目将经由 http://127.0.0.1/myproject 来完成。 这将导致Apache 列出文件夹显示如在下面的快照。
可以看出,Apache不需要处理Django的东西。 对于需要处理的,需要在Apache的httpd.conf配置。 于是打开httpd.conf并添加以下行 −
# Filename : example.py # Copyright : 2020 By Nhooo # Author by : www.cainiaoplus.com # Date : 2020-08-08 WSGIScriptAlias / /var/www/html/myproject/myproject/wsgi.py WSGIPythonPath /var/www/html/myproject/ <Directory /var/www/html/myproject/> <Files wsgi.py> Order deny,allow Allow from all </Files> </Directory>
如果可以访问登录页面: http://127.0.0.1/myapp/connection, 你将看到如下页面 -