部署Django项目在IIS10上
系统及软件版本
- Windows Server 2012 Standard
- IIS 8.0
- Anaconda3 4.0.0 64位 (搭载python3.5.1)
- Django 1.10.1
1. 可运行的django网站
首先确保自己的django网站在服务器上可以通过命令行 runserver 正常运行。
2. IIS配置
添加角色与功能
- 在服务器管理器中,添加角色与功能
- 添加角色与功能,其中CGI组件必须安装。
3. Python安装wfastcgi模块
- 在python的Scripts目录下pip安装wfastcgi模块(我之前已经安装过了,所以截图提示不需再次安装)
4. 项目文件处理
-
在python的Lib\site-packages目录下,找到wfastcgi.py文件,并将其复制到你的django项目根目录下。
-
将项目文件放置到 C:\inetpub\wwwroot 目录下,方便管理,同时可以避免引起Windows Server的某些安全问题。
5. 配置网站
-
进入IIS管理器后,添加网站
-
填写相关参数
-
进入你建立的站点,选择处理程序映射。请注意,必须进入你指定的网站里面,再添加模块映射,否则,映射会添加到你所有的网站里。
-
添加模块映射。模块选择FastCgiModule,如果前面没有安装这个模块,请先安装哦。可执行文件对于本项目来说,实际上是必填的。此例中,C:\Anaconda3\python.exe|C:\inetpub\wwwroot\PowerX\wfastcgi.py。前面是python的路径,后面是wfastcgi.py文件的路径。实际上,如果wfastcgi.py文件路径直接引用python\Lib\site-packages目录下的文件也可以,不过就不可以部署多个Django网站了。
-
填写完参数后,选择请求控制,设置如图
-
确认添加后,程序映射添加成功
-
返回主页,进入FastCGI设置
-
选中新建的FastCGI应用程序,修改环境变量
-
需要添加的变量有3个:
-
get_wsgi_application()方法的位置,C:\Anaconda3\Lib\site-packages\django\core\wsgi.py
- Name: WSGI_HANDLER
- Value: django.core.wsgi.get_wsgi_application()
-
Django项目目录
- Name: PYTHONPATH
- Value: C:\inetpub\wwwroot\PowerX
-
项目settings.py文件的位置
- Name: DJANGO_SETTINGS_MODULE
- Value: powerx.settings
-
至此,一个不带static静态文件的Django项目就可以在服务器上运行啦!!!
来源:http://blog.csdn.net/elonpage/article/details/52645562
如果你看到页面没有css
样式了,应该是找不到静态文件,执行一下manager.py collectstatic
应该就好了。
另外,为了让静态文件的处理不经过Python
这一层,建议往static
和media
目录下各放一个web.config
文件,内容都是:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<handlers>
<remove name="Python FastCGI" />
</handlers>
</system.webServer>
</configuration>
记得如果你改过最前面的web.config
文件中的name
值,这里也要对应。这样就可以在获取静态文件的时候快一点了。
来源:http://blog.csdn.net/gzlaiyonghao/article/details/70243639
系统及软件版本
- Windows Server 2012 Standard
- IIS 8.0
- Anaconda3 4.0.0 64位 (搭载python3.5.1)
- Django 1.10.1
1. 可运行的django网站
首先确保自己的django网站在服务器上可以通过命令行 runserver 正常运行。
2. IIS配置
添加角色与功能
- 在服务器管理器中,添加角色与功能
- 添加角色与功能,其中CGI组件必须安装。
3. Python安装wfastcgi模块
- 在python的Scripts目录下pip安装wfastcgi模块(我之前已经安装过了,所以截图提示不需再次安装)
4. 项目文件处理
-
在python的Lib\site-packages目录下,找到wfastcgi.py文件,并将其复制到你的django项目根目录下。
-
将项目文件放置到 C:\inetpub\wwwroot 目录下,方便管理,同时可以避免引起Windows Server的某些安全问题。
5. 配置网站
-
进入IIS管理器后,添加网站
-
填写相关参数
-
进入你建立的站点,选择处理程序映射。请注意,必须进入你指定的网站里面,再添加模块映射,否则,映射会添加到你所有的网站里。
-
添加模块映射。模块选择FastCgiModule,如果前面没有安装这个模块,请先安装哦。可执行文件对于本项目来说,实际上是必填的。此例中,C:\Anaconda3\python.exe|C:\inetpub\wwwroot\PowerX\wfastcgi.py。前面是python的路径,后面是wfastcgi.py文件的路径。实际上,如果wfastcgi.py文件路径直接引用python\Lib\site-packages目录下的文件也可以,不过就不可以部署多个Django网站了。
-
填写完参数后,选择请求控制,设置如图
-
确认添加后,程序映射添加成功
-
返回主页,进入FastCGI设置
-
选中新建的FastCGI应用程序,修改环境变量
-
需要添加的变量有3个:
-
get_wsgi_application()方法的位置,C:\Anaconda3\Lib\site-packages\django\core\wsgi.py
- Name: WSGI_HANDLER
- Value: django.core.wsgi.get_wsgi_application()
-
Django项目目录
- Name: PYTHONPATH
- Value: C:\inetpub\wwwroot\PowerX
-
项目settings.py文件的位置
- Name: DJANGO_SETTINGS_MODULE
- Value: powerx.settings
-
至此,一个不带static静态文件的Django项目就可以在服务器上运行啦!!!