系统及软件版本
Windows Server 2012 Standard
IIS 8.0
Anaconda3 4.0.0 64位 (搭载python3.5.1)
Django 2.1.1
Windows Server 2012 Standard
IIS 8.0
Anaconda3 4.0.0 64位 (搭载python3.5.1)
Django 2.1.1
1. 可运行的django网站
首先确保自己的django网站在服务器上可以通过命令行 runserver 正常运行。
2. IIS配置
添加角色与功能
在服务器管理器中,添加角色与功能
添加角色与功能,其中CGI组件必须安装。
在服务器管理器中,添加角色与功能
添加角色与功能,其中CGI组件必须安装。
3. Python安装wfastcgi模块
在python的Scripts目录下pip安装wfastcgi模块(我之前已经安装过了,所以截图提示不需再次安装)
pip install wfastcgi
4. 项目文件处理
在python的Lib\site-packages目录下,找到wfastcgi.py文件,并将其复制到你的django项目根目录下。
将项目文件放置到 C:\inetpub\wwwroot 目录下,方便管理,同时可以避免引起Windows Server的某些安全问题。
在python的Lib\site-packages目录下,找到wfastcgi.py文件,并将其复制到你的django项目根目录下。
将项目文件放置到 C:\inetpub\wwwroot 目录下,方便管理,同时可以避免引起Windows Server的某些安全问题。
5. 配置网站
进入IIS管理器后,添加网站
填写相关参数
进入你建立的站点,选择处理程序映射。请注意,必须进入你指定的网站里面,再添加模块映射,否则,映射会添加到你所有的网站里。
添加模块映射。模块选择FastCgiModule,
如果前面没有安装这个模块,请先安装哦。(在第2大步骤已安装)
可执行文件对于本项目来说,实际上是必填的。此例中,C:\Anaconda3\python.exe|C:\inetpub\wwwroot\PowerX\wfastcgi.py。
(如果是带空格的,需要添加双引号,python.exe路径 | 项目路径\wfastcgi.py)
前面是python的路径,后面是wfastcgi.py文件的路径。实际上,如果wfastcgi.py文件路径直接引用python\Lib\site-packages目录下的文件也可以,不过就不可以部署多个Django网站了。
填写完参数后,选择请求控制,设置如图 (取消复选框)
确认添加后,程序映射添加成功
返回主页,进入FastCGI设置
选中新建的FastCGI应用程序,修改环境变量
需要添加的变量有3个:
Name: DJANGO_SETTINGS_MODULE
Value: powerx.settings (项目名的settings)
Name: PYTHONPATH
Value: C:\inetpub\wwwroot\PowerX (项目路径)
Name: WSGI_HANDLER
Value: django.core.wsgi.get_wsgi_application()
get_wsgi_application()方法的位置,C:\Anaconda3\Lib\site-packages\django\core\wsgi.py
Django项目目录
项目settings.py文件的位置
进入IIS管理器后,添加网站
填写相关参数
进入你建立的站点,选择处理程序映射。请注意,必须进入你指定的网站里面,再添加模块映射,否则,映射会添加到你所有的网站里。
添加模块映射。模块选择FastCgiModule,
如果前面没有安装这个模块,请先安装哦。(在第2大步骤已安装)
可执行文件对于本项目来说,实际上是必填的。此例中,C:\Anaconda3\python.exe|C:\inetpub\wwwroot\PowerX\wfastcgi.py。
(如果是带空格的,需要添加双引号,python.exe路径 | 项目路径\wfastcgi.py)
前面是python的路径,后面是wfastcgi.py文件的路径。实际上,如果wfastcgi.py文件路径直接引用python\Lib\site-packages目录下的文件也可以,不过就不可以部署多个Django网站了。
填写完参数后,选择请求控制,设置如图 (取消复选框)
确认添加后,程序映射添加成功
返回主页,进入FastCGI设置
选中新建的FastCGI应用程序,修改环境变量
需要添加的变量有3个:
Name: DJANGO_SETTINGS_MODULE
Value: powerx.settings (项目名的settings)
Name: PYTHONPATH
Value: C:\inetpub\wwwroot\PowerX (项目路径)
Name: WSGI_HANDLER
Value: django.core.wsgi.get_wsgi_application()
get_wsgi_application()方法的位置,C:\Anaconda3\Lib\site-packages\django\core\wsgi.py
Django项目目录
项目settings.py文件的位置
至此,一个不带static静态文件的Django项目就可以在服务器上运行啦!!!
如果你看到页面没有css样式了,应该是找不到静态文件,
那就在url.py中写入
from django.views.static import serve
urlpatterns = [
# url(r'^static/(?P<path>.*)$', serve, {'document_root': STATIC_ROOT, }),
url(r'^static/(?P<path>.*)$', django.views.static.serve, {'document_root': STATIC_ROOT, }),
]
切记,该环境不支持中文路径