Windows的 IIS 部署django项目
Windows的 IIS 部署django项目
1。安装Windows的IIS 功能(win10为例):
(1)进入控制面板 :选择大图标 进入程序和功能

(2)启用或者关闭Windows功能

(3)勾选需要的功能(CGI必须安装)、

(4)验证IIS有没有安装成功
打开浏览器
输入地址为: localhost (出现此页面则IIS安装成功)

2.环境准备:你的django 或许使用了虚拟环境,那么部署的时候,服务器主机除了python之外,,,django框架 依赖库都要在服务器主机上安装
(1)安装 wfastcgi 打开管理员命令行(cmd)使用命令
pip install wfastcgi
安装成功后
wfastcgi-enable (记住wfastcgi.py文件的路径)
(2)先将项目 复制到 C:\inetpub\wwwroot 目录下
(避免权限问题导致项目部署失败)
(3)将wfastcgi.py复制到项目的根目录下

(4)检查依赖库有没有全部安装
(安装依赖库的时候,可以先把项目环境的软件包信息和依赖软件导出到文件里<注意切换到项目目录,如runserver方法一致>
(命令为:pip freeze > requirements.txt)然后直接在cmd(管理员)里面执行pip install -r requirements.txt)
打开cmd(管理员) 进入到项目的根目录 ,然后运行 python manage.py runserver
如果报错,仔细检查错误信息,安装需要的依赖库(上图是正确运行的结果,我在部署的时候就碰到,因为使用ide开发,使用了bootstrap3 ,项目部署的时候忘记安装库,
导致项目部署完后报错,错误信息也没提示是依赖库的问题,直到使用runserver执行的收,提示 bootstrap3 is not defined)

(5)开始部署项目(win10) 开始菜单 >>Windows管理工具>>Internet information service

网站:右键>>添加网站

网站名称自己填 物理路径选择项目的文件夹 端口号填一个没有被占用的端口即可 主机名不填

选中添加的网站 打开处理程序映射

右边选择添加模块映射

请求路径填 “*”
模块选择 FastCgiModule
可执行文件:“python解释器的路径”|wfastcgi.py文件的路径
示例(C:\Program Files (x86)\Microsoft Visual
Studio\Shared\Python37_64\python.exe|C:\inetpub\wwwroot\DjangoWebProject1\DjangoWebProject1\wfastcgi.py)
如果提示用引号括起来,那么将前面python解释器的路径用引号括起来 (路径包含空格)

打开请求限制,取消勾选

添加环境变量:先进入主机的主页>>FastCGI设置

双击你添加的网站的路径>>点击箭头指的地方

添加三个变量
1. get_wsgi_application()方法的位置,
Name: WSGI_HANDLER
Value:
django.core.wsgi.get_wsgi_application()
2.Django项目目录
Name: PYTHONPATH
Value: C:\inetpub\wwwroot\DjangoWebProject1 (此处填写项目的目录)
3.项目settings.py文件的位置
Name: DJANGO_SETTINGS_MODULE
Value: DjangoWebProject1.settings(DjangoWebProject1是自己的项目名称)
如果项目包含静态文件,则需要配置静态文件
配置静态文件,在项目目录调用python manage.py collectstaic命令(如之前的运行runserver方法一致)将app下static中的静态文件全部拷贝到 settings.py 中设置的 STATIC_ROOT 文件夹中
命令运行结束后在项目的具体app路径下的static文件夹>>admin>>新建一个文件web.config

在web.config中写入如下内容
<?xml version="1.0"
encoding="UTF-8"?>
<configuration>
<system.webServer>
<!-- this configuration overrides the FastCGI handler to let IIS
serve the static files -->
<handlers>
<clear/>
<add name="StaticFile" path="*"
verb="*" modules="StaticFileModule"
resourceType="File" requireAccess="Read" />
</handlers>
</system.webServer>
</configuration>
最后进入IIS管理器
你添加的网站>>右键菜单>>添加虚拟目录
名称:一般使用static
路径:选择web.config所在的目录
最后重新启动下网站就行了
Windows的 IIS 部署django项目的更多相关文章
- Windows server iis部署Django详细操作
教程基于Windows server2012+Python3.6+IIS之上部署django的,同样适用于server2012之上的版本服务器和windows7以上的windows操作系统. 文章来自 ...
- IIS部署Python-django项目
1.安装CgiModule模块 首先,IIS要部署django项目,需要CgiModule模块的支持,所以首先我们要确认这个模块是否存在 打开IIS管理器: 我这里是存在的: 如果不存在,可以自行在控 ...
- 腾讯云服务器部署 django项目整个流程
CentOS7下部署Django项目详细操作步骤 前记:购买腾讯云服务器,配置自选,当然新用户免费体验半个月,我选择的系统是centos7系统版本, 接下来我们来看整个配置项目流程. 部署是基于:ce ...
- nginx + uwsgi 部署django项目
因项目需求,需要部署django项目,这里是基础的nginx配合uwsgi部署django,后续会采用docker部署的方式 环境: centos7 python3.5.4 django2.1.4 u ...
- 在裸机centos7系统中部署django项目的过程
概要 本文用一台安装了centos7.5系统的裸奔Linux机器(当然是虚拟机)详细讲解从无到有部署django项目的过程. 安装必要的工具 配置yum源 至于什么是yum源大家请自行百度,本人用的是 ...
- nginx+uwsgi部署Django项目到Ubuntu服务器全过程,以及那些坑!!!
前言:自己在windows上用PyCharm编写的Django项目,编写完后在windows上运行一点问题都没有,但是部署到服务器上时却Bug百出.百度,CSDN,sf,各种搜索寻求解决方案在历时3天 ...
- 打造专属测试平台4-使用Docker部署Django项目
编写完项目代码后,为了稳定的运行,需要将其部署至服务器.这里我选择了Docker去部署Django后端代码. 首先来看看Runoob对Docker的介绍: Docker 是一个开源的应用容器引擎,基于 ...
- 通过IIS部署Flask项目
本文主要介绍在Windows Server 2012R2上通过IIS部署Flask项目的过程,以及对TTFB延迟大问题的思考.关于如何申请云服务器,注册(子)域名,备案,开放云服务器端口,获取SS ...
- mac osx 上面部署Django项目 apache+mysql+mod_wsgi
1.安装Xcode command line tools 首先,编译mysql和Homebrew需要用到Xcode command line tools,所以首先安装command line tool ...
随机推荐
- 前端js倒计时(精确到毫秒)
话不多说,直接上代码: 有需要直接拿走, <html> <head> <style> div{ width:100%; text-align:center; fon ...
- Mac上使用ssh连接服务器title显示服务器的ip
Mac上使用ssh连接服务器title显示服务器的ip 使用Mac开发时,管理的服务器过多时,会搞混乱.可能有时啪啪啪一顿操作,最后发现操作错了机器. 解决方案 在远程服务器上,编辑vim /etc/ ...
- c# 开发ActiveX控件,添加事件,QT调用事件
c# 开发 ActiveX 的过程参考我的另一篇文章 : https://www.cnblogs.com/baqifanye/p/10414004.html 本篇讲如何 在C# 开发的ActiveX ...
- Spring中的配置文件文件位置
在Java开发中,一般在Spring框架中,classpath的位置是指src下,在IDEA中一般是指resource中 配置文件 位置:任意,开发中一般在classpath下(src) 名称:任意, ...
- while循环的初始以及编码的初始
whlie循环 why:比如要多次重复做一件事情,如歌曲列表循环,银行卡密码错误多次重复! what:whlie无限循环. how: ##基本结构while 条件: 循环体 基本原理 循环如何终 ...
- Protocol Buffer使用转换工具将proto文件转换成Java文件流程及使用
Client与Server的网络通信协议传输使用google protobuf,服务器端使用的是Java 一. Protocol Buffersprotobuf全称Google Protocol Bu ...
- python数据库-MongoDB的安装(53)
一.NoSQL介绍 1.什么是NoSQL NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL". NoSQL,指的是非关系型的数据库.NoSQL有时也称 ...
- Centos7 安装jdk,MySQL
报名立减200元.暑假直降6888. 邀请链接:http://www.jnshu.com/login/1/20535344 邀请码:20535344 学习阿里云平台的云服务器配置Java开发环境.我现 ...
- [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]列名 'user1' 无效
唉,还是自己对php执行sql语句运用不熟练.... 我的错误代码是这样的,(解决办法在最后) $re=sqlsrv_query($conn, "select * from visitor ...
- MsgWaitForMultipleObjects
Use caution when calling the wait functions and code that directly or indirectly creates windows. If ...