Django项目部署本地windows IIS(详细版)和static文件设置(页面样式正常显示)

news2024/11/26 13:26:40

目录

必要条件:

一、下载并启用wfastcgi

二、window安装 IIS功能

三、IIS管理器中添加网站

1、复制项目

2、复制wfastcgi.py文件

3、创建文件web.config

4、添加网站,填写信息

5、启动fastcgi程序

6、修改进程标识

四、static文件设置和正确显示


必要条件:

已经有一个完整的django项目搭建好,在vscode或者pycharm可以正常运行

通过python manage.py runserver能够正常访问

部署到本地window IIS服务器:

django项目只是我们的一个应用项目,想要实现不用打开vscode 输入命令来启动项目,用户就可以通过ip地址加端口来访问,就需要服务器帮助我们部署好,常见的服务器有apache、nginx、IIS等,这里就只讲window系统下 IIS服务器部署网站的过程。

一、下载并启用wfastcgi

这里可以通过cmd窗口下载并启动

pip install wfastcgi
wfastcgi-enable

输出得到类似这种信息c:\Users\ss\AppData\Local\Programs\Python\Python37\python.exe|c:\Users\ss\AppData\Local\Programs\Python\Python37\lib\site-packages\wfastcgi.py"

|前面代表你的python运行环境(这里要确记这个环境是你django项目运行的环境,要保持一致),后面代表wfastcgi.py文件所在路径

二、window安装 IIS功能

按照这个路径启动或关闭windows功能

按照这个来勾选功能,然后点击确定进行安装,安装完后重启一下系统,打开IIS管理器

然后浏览器输入127.0.0.1出现以下这个页面代表IIS服务器正常启动了

三、IIS管理器中添加网站

1、复制项目

首先在C:\inetpub\wwwroot\目录下面创建一个文件夹比如demo 这个文件夹用于存放你创建好的django项目,比如这个是我创建好的项目,直接把这里的全部文件复制到刚刚创建的demo文件夹

2、复制wfastcgi.py文件

按照刚刚第一步输出的路径c:\Users\ss\AppData\Local\Programs\Python\Python37\lib\site-packages\找到wfastcgi.py文件,也复制到demo文件夹里面,也就是跟manage.py同一个目录

3、创建文件web.config

同样在这个目录下,创建文件web.config

这里主要修改scriptProcessor

scriptProcessor="c:\Users\ss\AppData\Local\Programs\Python\Python37\python.exe|c:\inetpub\wwwroot\demo\wfastcgi.py

要更换成自己的,前面是python执行环境,后面就是复制的wfastcgi.py路径

<add key="PYTHONPATH" value="C:\inetpub\wwwroot\demo" />这里换成自己的路径
            <add key="DJANGO_SETTINGS_MODULE" value="myFirWeb.settings" />这里的settings换成你自己创建的django项目名,我是前面的myFirWeb

<?xml version="1.0" encoding="UTF-8"?>
    <configuration>
        <system.webServer>
            <handlers>
                <add name="Python FastCGI" path="*" verb="*" modules="FastCgiModule" scriptProcessor="c:\Users\ss\AppData\Local\Programs\Python\Python37\python.exe|c:\inetpub\wwwroot\demo\wfastcgi.py" resourceType="Unspecified" requireAccess="Script" />
            </handlers>
        </system.webServer>
        <appSettings>
            <add key="WSGI_HANDLER" value="django.core.wsgi.get_wsgi_application()" />
            <add key="PYTHONPATH" value="C:\inetpub\wwwroot\demo" />
            <add key="DJANGO_SETTINGS_MODULE" value="myFirWeb.settings" />
            <add key="WSGI_LOG" value="C:\inetpub\wwwroot\demo\error.log" />
        </appSettings>
    </configuration>

4、添加网站,填写信息

名称随便填写,物理路径就刚刚创建的C:\inetpub\wwwroot\demo,端口尽量选择其他例如8001这些,不要80,80是默认的已经使用的端口

5、启动fastcgi程序

创建完成后,点击网站www,找到处理程序映射,找到刚刚 创建的这个模块<add name="Python FastCGI" path="*" verb="*" modules="FastCgiModule

点击进入,检查一下和web.config文件对应不,然后点击请求限制

即使没有什么改进也要点进来,进行,确认,确认,然后选择是,就相当于启动这个程序,这一步很重要

6、修改进程标识

点击应用程序池,点击自己的网站,点击右侧高级设置,修改进程标识为localsystem

然后重启网站,浏览器输入网址127.0.0.1:端口号,就可以正常访问

四、static文件设置和正确显示

我一开始按照上述方法弄了之后,页面的样式无法正常显示。

1、将STATICFILES_DIRS = (
   os.path.join(BASE_DIR, "static"),
 )修改成以下代码

STATIC_URL = '/static/'
STATIC_ROOT= os.path.join(BASE_DIR, 'static')

然后命令行窗口输入 > python manage.py collectstatic 选择yes覆盖

2、在static目录下创建文件web.config这个很重要

<?xml version="1.0" encoding="UTF-8"?>
    <configuration>
        <system.webServer>
            <handlers>
            	<remove name="Python FastCGI" />
            </handlers>
        </system.webServer>
    </configuration>

最后可以正常显示网站页面

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1264856.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

吉利展厅 | 透明OLED拼接2x2:科技与艺术的完美融合

产品&#xff1a;4块55寸OLED透明拼接屏 项目地点&#xff1a;南宁 项目时间&#xff1a;2023年11月 应用场景&#xff1a;吉利展厅 在2023年11月的南宁&#xff0c;吉利展厅以其独特的展示设计吸引了众多参观者的目光。其中最引人注目的亮点是展厅中央一个由四块55寸OLED透…

pandas教程:USDA Food Database USDA食品数据库

文章目录 14.4 USDA Food Database&#xff08;美国农业部食品数据库&#xff09; 14.4 USDA Food Database&#xff08;美国农业部食品数据库&#xff09; 这个数据是关于食物营养成分的。存储格式是JSON&#xff0c;看起来像这样&#xff1a; {"id": 21441, &quo…

4、stable diffusion

github 安装anaconda环境 conda env create -f environment.yaml conda activate ldm安装依赖 conda install pytorch1.12.1 torchvision0.13.1 torchaudio0.12.1 cudatoolkit11.3 -c pytorch pip install transformers4.19.2 diffusers invisible-watermark pip install -e…

快速筛出EXCEL行中的重复项

比如A列是一些恶意IP需要导入防火墙&#xff0c;但包括一些重复项&#xff0c;为不产生错误&#xff0c;需要把重复项筛出来&#xff1a; 1、给A列排序&#xff0c;让重复项的内容排在相邻的行 2、在B列中写一个条件函数&#xff1a;IF(A1A2,1,0)&#xff0c;然后下拉至行尾完成…

2023-简单点-机器学习中常用的特殊函数,激活函数[sigmoid tanh ]

机器学习中的特殊函数 Sigmoidsoftplus函数tanhReLu(x)Leaky-ReluELUSiLu/ SwishMish伽玛函数beta函数Ref Sigmoid 值域: 【0,1】 定义域&#xff1a;【负无穷,正无穷】 特殊点记忆&#xff1a; 经过 [0 , 0.5] 关键点[0,0.5]处的导数是 0.025 相关导数&#xff1a; softplu…

群晖NAS配置之自有服务器frp实现内网穿透

什么是frp frp 是一个专注于内网穿透的高性能的反向代理应用&#xff0c;支持 TCP、UDP、HTTP、HTTPS 等多种协议&#xff0c;且支持 P2P 通信。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。今天跟大家分享一下frp实现内网穿透 为什么使用 frp &a…

selenium 工具 的基本使用

公司每天要做工作汇报&#xff0c;汇报使用的网页版&#xff0c; 所以又想起 selenium 这个老朋友了。 再次上手&#xff0c;发现很多接口都变了&#xff0c; 怎么说呢&#xff0c; 应该是易用性更强了&#xff0c; 不过还是得重新看看&#xff0c; 我这里是python3。 pip安装…

Blender动画导入Three.js

你是否在把 Blender 动画导入你的 ThreeJS 游戏(或项目)中工作时遇到问题? 您的 .glb (glTF) 文件是否正在加载,但没有显示任何内容? 你的骨骼没有正确克隆吗? 如果是这样,请阅读我如何使用 SkeletonUtils.js 解决此问题 1、前提条件 你正在使用 Blender 3.1+(此版本…

微服务--03--OpenFeign 实现远程调用 (负载均衡组件SpringCloudLoadBalancer)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 OpenFeign其作用就是基于SpringMVC的常见注解&#xff0c;帮我们优雅的实现http请求的发送。 RestTemplate实现了服务的远程调用 OpenFeign快速入门负载均衡组件Spr…

【Linux】Linux第一个小程序 --- 进度条

&#x1f466;个人主页&#xff1a;Weraphael ✍&#x1f3fb;作者简介&#xff1a;目前正在学习c和Linux还有算法 ✈️专栏&#xff1a;Linux &#x1f40b; 希望大家多多支持&#xff0c;咱一起进步&#xff01;&#x1f601; 如果文章有啥瑕疵&#xff0c;希望大佬指点一二 …

内置函数【MySQL】

文章目录 MySQL 内置函数日期和时间函数字符串函数数学函数信息函数参考资料 MySQL 内置函数 MySQL 的内置函数主要分为以下几种&#xff1a; 字符串函数&#xff1a;用于对字符串进行操作&#xff0c;如连接、截取、替换、反转、格式化等。数值函数&#xff1a;用于对数值进…

Phpstudy v8.0/8.1小皮升级Apache至最新,同时升级openssl版本httpd-2.4.58 apache 2.4.58

1.apache官网下载最新版本的apache 2.4.58 2.phpstudy下apache停止运行&#xff0c;把原来的Apache文件夹备份一份 复制图中的文件替换apache目录下文件 3.phpstudy中开启apache

西南科技大学(数据结构A)期末自测练习二

一、填空题(每空1分,共10分) 1、在线性表的下列运算中,不改变数据元素之间结构关系的运算是( D ) A、插入 B、删除 C、排序 D、定位 2、顺序表中第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是( B ) A.110 B.108 C.100 …

11.28C++

#include <iostream>using namespace std;int main() {string str;cout << "请输入一个字符串&#xff1a;" << endl;getline(cin,str);int size str.size();int a0,b0,c0,d0,e0;for(int i0; i < size; i){if(str.at(i) > A && str…

直线(蓝桥杯)

直线 题目描述 本题为填空题&#xff0c;只需要算出结果后&#xff0c;在代码中使用输出语句将所填结果输出即可。 在平面直角坐标系中&#xff0c;两点可以确定一条直线。如果有多点在一条直线上&#xff0c; 那么这些点中任意两点确定的直线是同一条。 给定平面上 2 3 个…

神奇植物在哪里?文心大模型助力一秒读懂花草的“前世今生”

本期文心开发者说邀请到飞桨开发者技术专家谢杰航老师&#xff0c;分享如何利用AI技术构建风景园林行业的植物知识科普系统&#xff0c;接着还介绍了大模型应用的基本技术流程框架&#xff0c;多模态特征提取以及使用向量数据库的优势&#xff0c;使用飞桨星河社区运行向量数据…

解决git action发布报错:Input required and not supplied: upload_url

现象&#xff1a; 这个问题死活都找不到原因&#xff0c;后来打了一段调试的代码 - name: Debug Create Release Output run: | echo "Release ID: ${{ env.RELEASE_ID }}" echo "Release Upload URL: ${{ env.RELEASE_UPLOAD_URL }}" env: RELEASE_ID: ${…

css-tricks网站图例

使用css实现钟表 <template><div><p><small>CSS sin() and cos() does <strong>NOT</strong> work in your browser.</small></p><div class"clock"><div id"app" class"clock-face"…

解决:SyntaxError: Non-UTF-8 code starting with À in file but no encoding declared

解决&#xff1a;SyntaxError: Non-UTF-8 code starting with in file but no encoding declared 文章目录 解决&#xff1a;SyntaxError: Non-UTF-8 code starting with in file but no encoding declared背景报错问题报错翻译报错原因解决方法使用utf-8格式使用gbk格式今天…

89基于matlab的人工蜂群和粒子群混合优化的路径规划算法

基于matlab的人工蜂群和粒子群混合优化的路径规划算法&#xff0c;起点和终点确定的前提下&#xff0c;在障碍物中寻找最佳路径。数据可更换自己的&#xff0c;程序已调通&#xff0c;可直接运行。 89人工蜂群和粒子群混合优化 (xiaohongshu.com)https://www.xiaohongshu.com/e…