windows部署django服务器

windows部署django服务器

1、安装IIS

1.1 控制面板-----程序----程序和功能----启用或关闭windows功能

1.2安装IIS服务器,完成后,重新进入,把CGI安装进系统

2、安装python与虚拟环境

2.1 安装python

注:关注python的版本号

2.2 安装virtualenv虚拟环境

pip install virtualenv
pip insatll virtualenvwrapper-win

2.3 创建一个虚拟环境

# djangodemo为放置django项目环境的文件夹
mkvirtualenv djangodemo

2.4进入虚拟环境

# 一般情况下创建后自动进入虚拟环境
#当需要查看当前系统下,具有哪些环境时可以使用
workon
# 进入django项目的虚拟环境中
workon djangodemo

在虚拟环境下,安装的任何python包,都只会对此虚拟环境作用,不会影响其他的全局环境

2.5Pycharm导出虚拟环境,实现环境迁移

1、导出

pip freeze > environment.txt

2、在其他环境安装

pip install -r environment.txt

3、离线包

pip download -r requestments.txt -d ./pip_packages 

#从当前环境的网络中下载requestments.txt中写的包,下载到当前目录下的pip_packages目录中,这时候你会发现,里面有很多依赖,还有一些whl文件

4、安装

pip install --no-index --find-links=d:\packages -r environment.txt 

--find-links指定的是包文件的存放地址,-r指定的是txt文件的位置

pip list 查看效果

激活当前虚拟环境

activate.bat

退出虚拟环境

deactivate.bat

3、安装wfastcgi

pip install wfastcgi

# 使用国内的镜像
pip install -i https://pypi.doubanio.com/simple/ wfastcgi

# 启动服务
wfastcgi-enable
  • 把wfastcgi.py文件拷贝到网站IIS目录下

3、创建web.config

在网站根目录新建web.config文件

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <modules>
            <remove name="WebDAVModule"/>
        </modules>
        <handlers>
            <remove name="WebDAV"/>
            <add name="Python FastCGI"
                 path="*"
                 verb="*"
                 modules="FastCgiModule"
                 scriptProcessor="*"
                 resourceType="Unspecified"
                 requireAccess="Script"/>
        </handlers>
    </system.webServer>
    <appSettings>
        <add key="WSGI_HANDLER" value="django.core.wsgi.get_wsgi_application()"/>
        <add key="PYTHONPATH" value="*"/>
        <add key="DJANGO_SETTINGS_MODULE" value="*"/>
    </appSettings>
</configuration>
  • scriptProcessor 后的参数是我们启动wfastcgi复制下的地址.
  • PYTHONPATH 的 value是我们项目的地址 如 C:\www\server
  • DJANGO_SETTINGS_MODULE 的 value 是我们项目的中的sttings所在,如server.settings

在静态文件夹static下创建文件 web.config(此步骤也可不做)

<?xml version="1.0" encoding="UTF-8"?>
   <configuration>
         <system.webServer>
         	<handlers>
         		<clear/>
         		<add name="StaticFile" path="*" verb="*" modules="StaticFileModule" resourceType="File" requireAccess="Read" />
        	 	</handlers>
         </system.webServer>
</configuration>      

4、网站配置

修改应用程序池

  • 应用程序池→选中服务→高级设置

设置IIS

重启服务,浏览网页,看django是否正常运行

若报错:

不能在此路径中使用此配置节。如果在父级别上锁定了该节,便会出现这种情况。锁定是默认设置的(overrideModeDefault="Deny"),或...

  • 用管理员权限在cmd中运行(不要再powershell中运行)

    %windir%\system32\inetsrv\appcmd unlock config -section:system.webServer/handlers
    %windir%\system32\inetsrv\appcmd unlock config -section:system.webServer/modules

相关推荐
努力的小T17 分钟前
基于 Bash 脚本的系统信息定时收集方案
linux·运维·服务器·网络·云计算·bash
爱敲代码的边芙1 小时前
Linux:信号的保存[2]
linux·运维·服务器
葛小白11 小时前
第五天 Labview数据记录(5.1 INI配置文件读写)
服务器·labview
工程师焱记1 小时前
Linux 常用命令——系统设置篇(保姆级说明)
linux·运维·服务器
renhl2521 小时前
opengrok_使用技巧
windows
NiNg_1_2341 小时前
Windows cmd常用命令
windows·cmd
某风吾起2 小时前
linux系统中的 scp的使用方法
linux·服务器·网络
chian-ocean2 小时前
探索Linux中的进程控制:从启动到退出的背后原理
linux·运维·服务器
阿猿收手吧!2 小时前
【Linux网络总结】字节序转换 收发信息 TCP握手挥手 多路转接
linux·服务器·网络·c++·tcp/ip
华纳云IDC服务商2 小时前
常见的备份服务器操作系统如何选择
运维·服务器