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

相关推荐
hardStudy_h13 分钟前
Linux——常用系统设置和快捷键操作指令
linux·运维·服务器
我叫啥都行40 分钟前
计算机基础知识复习9.7
运维·服务器·网络·笔记·后端
qq 1778036222 小时前
智能新时代,游戏盾守护顺畅体验
运维·服务器·网络·游戏·云计算·ddos·ip
sysin.org3 小时前
VMware ESXi 7.0U3q macOS Unlocker 集成驱动版更新 OEM BIOS 2.7 支持 Windows Server 2025
windows·macos·esxi·bios·oem·网卡驱动·nvme驱动
神秘的土鸡3 小时前
Linux中使用Docker容器构建Tomcat容器完整教程
linux·运维·服务器·docker·容器·tomcat
shuxianshrng3 小时前
大气网格化精细化监管监测系统
大数据·服务器·windows·经验分享
friklogff3 小时前
【C#生态园】构建你的C#操作系统:框架选择与实践
服务器·开发语言·c#
TravisBytes3 小时前
linux 系统是如何收发数据包
linux·运维·服务器
晚睡早起₍˄·͈༝·͈˄*₎◞ ̑̑3 小时前
苍穹外卖学习笔记(七)
java·windows·笔记·学习·mybatis
少年负剑去4 小时前
django分发路由
数据库·django·sqlite