Windows环境下Apache安装部署说明及常见问题解决
一、软件准备
1.1 Python的下载与安装
见博客
链接: Python下载安装
1.2 Pycharm的下载与安装
见博客
链接: pycharm安装
1.3 Mysql的下载与安装
见博客
链接: MySQL安装
1.4 Navicat的下载与安装
可参考软件安装管家。
解释说明:Pycharm是Python的集成编译环境,Navicat是用于管理Mysql的。上述这些软件用于基于Mysql数据库下,基于Django框架下的网站开发。如果你想让你的网站能够在局域网下运行起来,并让处于该局域网下的其他人也能够访问,首先要确保在终端输入python manage.py runserver,在本地127.0.0.1下能够运行,接下来就是通过Apache将你所设计的网站部署在局域网下。
二、Apache部署
2.1 mod_wsgi下载与安装
2.1.1 下载mod_wsgi
这里一定要记住的是下载与你python版本匹配的下载mod_wsgi。
链接: Apache下载地址

2.1.2 注意一定要把下载的whl文件复制到你为你项目创建的虚拟环境下,这里可能因为每个人使用的环境不同而不同,有的是python环境,而有的是conda环境,无论如何,都要放在你为你项目创建的虚拟环境下的script文件夹下,方便下一步在虚拟环境下安装这个包。
2.1.3 win+R,输入cmd,打开终端,cd进whl所在的路径,输入指令
pip3 install "mod_wsgi-4.7.1-cp36-cp36-win_amd64.whl"
2.1.4 显示Successful installed mod_wsgi-4.7.1,之后继续输入指令,会出现三行代码,一定要记录下这三行代码,便于后面Apache里文件的更改。
mod_wsgi-express module-config

我这里的三行代码是(每个人根据自己的文件路径会有不同)
LoadFile "D:/Anaconda/envs/wangyekaifapytorch/python36.dll"
LoadModule wsgi_module "D:/Anaconda/envs/wangyekaifapytorch/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "D:/Anaconda/envs/wangyekaifapytorch"
2.1.5 mod_wsgi安装成功。
2.2 Apache下载与安装
2.2.1下载Apache
链接: Apache下载地址
选择最新的版本进行下载。

2.2.2 我们对下载下来的压缩包进行解压

解压之后,打开之后的样子

2.2.3 win+R,输入cmd,打开终端,cd进所Apache24文件夹下的bin在的路径,输入指令
httpd.exe -k install -n "apache2.4"
出现successfully installed说明服务创建成功。
2.2.4 对Apache进行部署
按顺序打开文件夹,找到httpd.conf进行更改


注意这里一共有三大类需要进行更改。
第一类,Apache的安装路径

第二类,所要部署的IP地址以及端口号


这里需要强调两点
第一点ip地址的查看方式。
win+R,输入cmd,打开终端,输入以下指令
ipconfig
第二点,端口号不能冲突
第三类,设置工程路径以及虚拟环境的路径。

这里特别要注意的是:
第一点:如果项目路径或者是虚拟环境里面有例如空格和.这样无效的字符,你可以通过添加引号,如果添加引号仍然无法启动Apache,那建议还是把路径或者文件的名字改一改吧,不要有这样不合法或者无效的字符。
第二点:如何查询httpd.conf的更改是否正确
win+R,输入cmd,打开终端,cd进所Apache24文件夹下的bin在的路径,输入指令httpd-t

如果报syntax OK,那么就是httpd.conf的更改正确。不正确会给报哪一行不正确,根据索引进行更改即可。
2.2.5 最后我们来启动Apache
我们按照顺序来打开exe软件:



点击start,如果有绿色小太阳,那么就有80%的概率部署成功了。
如果部署不成功,那么会报错failed,我们就要去检查httpd.conf了,另外一种方法就是打开错误日志,查看错误。错误日志所在位置是


可以打开该文件进行查看错误的根源。
2.2.6 其他需要注意的问题
第一个,有时候静态文件加载不出来,那我们需要复制一份静态文件,并在终端里面输入指令
python manage.py collectstatic
第二个,有绿色的小太阳,但是在利用Ip加端口访问网站的时候,一直转圈,那么我们需要在之前的httpd.conf加上这一行代码。
WSGIApplicationGroup %{GLOBAL}
第三个,如果仅仅只能自己访问,那么可能是防火墙的问题,关闭防火墙即可。
相关文章:
Windows环境下Apache安装部署说明及常见问题解决
一、软件准备 1.1 Python的下载与安装 见博客 链接: Python下载安装 1.2 Pycharm的下载与安装 见博客 链接: pycharm安装 1.3 Mysql的下载与安装 见博客 链接: MySQL安装 1.4 Navicat的下载与安装 可参考软件安装管家。 解释说明:Pycharm是Python的集成编译环境,Nav…...
Linux-安装docker-compose
前言:本文建立在服务器中已经存在docker环境的基础上,总结了安装docker-compose过程,以及安装过程中遇到的问题和解决方案。 一、下载docker-compose 在网上找了两种,一种是github官方的,一种是国内的镜像 gitbub官…...
机器学习实验一:KNN算法,手写数字数据集(使用汉明距离)
KNN-手写数字数据集: 使用sklearn中的KNN算法工具包( KNeighborsClassifier)替换实现分类器的构建,注意使用的是汉明距离; 分段解释代码: import os import pandas as pd from Levenshtein import hamming导入所需的库,包括os用于文件操作,pandas用于数据处理,以及hamm…...
Java零基础入门-赋值运算符
前言 Java是一门广泛被应用的编程语言,它被用于开发各种类型的应用程序,从桌面应用程序到企业级后端系统。对于零基础的人来说,学习Java可能会感到有些困难。本文将帮助那些没有编程经验的人了解Java的赋值运算符。 摘要 本文将介绍Java中…...
xshell+xming显示jmeter的gui页面
1.下载和安装xming,下载地址:https://sourceforge.net/projects/xming/ 2.配置xming 记住这个端口,一会要用到 修改进入xming安装目录修改host文件 此处是远程服务器的ip 3.服务器执行vi /etc/ssh/sshd_config,修改成如图所示…...
el-tree业务
<el-form-item label"选择节点" prop"node_ids"><el-checkboxv-if"regionList.length"v-model"selectAll":disabled"selectDisabled":indeterminate"isIndeterminate":show-checkbox"!selectDisabl…...
警惕Mallox勒索病毒的最新变种malloxx,您需要知道的预防和恢复方法。
导言: 恶意软件的威胁不断进化,其中之一是.malloxx勒索病毒。这种病毒可以加密您的文件,并要求您支付赎金以解锁它们。本文91数据恢复将详细介绍.malloxx勒索病毒,包括如何恢复被加密的数据文件以及如何预防这种威胁。如果受感染…...
linux中断下文之tasklet(中断二)
在申请 GPIO 中断时使用 request_irq,但是request_irq绑定的中断服务程序指的是中断上文。在 Linux 内核中,tasklet 是一种特殊的软中断机制,被广泛用于处理中断下文相关的任务。它是一种常见且有效的方法,在多核处理系统上可以避免并发问题。…...
Mysql事务+redo日志+锁分类+隔离级别+mvcc
事务: 是数据库操作的最小工作单元,是作为单个逻辑工作单元执行的一系列操作;这些操作作为一个整体一起向系统提交,要么都执行、要么都不执行;事务是一组不可再分割的操作集合(工作逻辑单元)&a…...
Kafka-Java四:Spring配置Kafka消费者提交Offset的策略
一、Kafka消费者提交Offset的策略 Kafka消费者提交Offset的策略有 自动提交Offset: 消费者将消息拉取下来以后未被消费者消费前,直接自动提交offset。自动提交可能丢失数据,比如消息在被消费者消费前已经提交了offset,有可能消息…...
Python 训练集、测试集以及验证集切分方法:sklearn及手动切分
目录 方法一 方法二 需求目的:针对模型训练输入,按照6:2:2的比例进行训练集、测试集和验证集的划分。当前数据量约10万条。如果针对的是记录条数达上百万的数据集,可按照98:1:1的比例进行切分。 方法一:切分训练集和测试集&…...
数据结构,及分类(存储分类、逻辑分类)介绍
一、数据结构: 数据是软件开发的核心。在软件开发过程中基本上就是对数据的新增、删除、修改、查看的操作。 如何合理存储数据,如何有效提升数据操作开发效率,都是软件开发中的重中之重。使用合理的数据结构是非常重要的。 1.1简介ÿ…...
Powershell脚本自动备份dhcp数据库
文章目录 为什么要备份DHCP数据库呢?在PowerShell中自动备份DHCP数据库1,创建备份目录2,判断备份路径是否存在3,备份DHCP数据库4,完整自动备份脚本5,安排定期备份 推荐阅读 为什么要备份DHCP数据库呢&#…...
第十六章总结:反射和注解
.1.1:访问构造方法 反射: 1.class类 2.获取构造方法 3.获取成员属性 4.获取成员方法 注解 1.内置注解 2.反射注解 3 创建Class对象的三种方式 1.使用getClass()方法 object str new object()…...
mysql 切割字符串函数
93、mysql 切割字符串函数 需求,使用in 匹配多个参数,name字段值类型:1234(小明) 结果: select * from user where SUBSTRING_INDEX(REPLACE(name, ), ), (, -1) in ( 小明,小李)使用的函数如下 1、使用SUBSTRING_INDEX函数 SU…...
汽车发动机电机右盖设计
摘要 随着我国微型电子技术和社会经济的发展,目前行业内为满足客户需求出现了大量的电器设备,而大多数的电气设备的重要组成中都有电机,并且电机端盖成为电机研发人员重点关注和研究的对象,逐渐成为电机的重要组成部分,…...
ETHERNET/IP从站转CANOPEN主站连接AB系统的配置方法
你还在为配置网关的ETHERNET/IP从站和CANOPEN主站发愁吗?今天来教你解决办法! 一,首先,配置网关的ETHERNET/IP从站,需要使用AB系统的配置方法,具体步骤如下 1,使用 AB 系统配置网关的 ETHERNET/…...
人工智能和机器学习:走向智能未来的关键
人工智能(AI)和机器学习(ML)是当今IT领域中最令人振奋的发展方向之一。从自动驾驶汽车到智能助手,AI技术的应用正在不断扩展,重新定义着我们的生活方式和商业模式。在这个文章中,我们将深入探讨…...
openGauss本地Centos7.6单机安装和简单应用
openGauss本地Centos7.6单机安装和简单应用 openGauss基础环境配置openGauss安装openGauss使用测试openGauss常用命令 openGauss基础环境配置 在VMware Workstation中安装一台 centos7.6 内存:8GB,亲测4GB安装不够 磁盘:测试50GB-100GB够用 …...
LeetCode--1 两数之和
文章目录 1 题目描述2 解题思路2.1 暴力破解2.2 使用 Map 1 题目描述 给定一个整数数组 nums 和一个整数目标值 target, 请你在该数组中找出 和为目标值 target 的那 两个 整数, 并返回它们的数组下标 你可以假设每种输入只会对应一个答案。但是, 数组中同一个元素在答案里不…...
【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型
摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...
调用支付宝接口响应40004 SYSTEM_ERROR问题排查
在对接支付宝API的时候,遇到了一些问题,记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...
Spring Boot 实现流式响应(兼容 2.7.x)
在实际开发中,我们可能会遇到一些流式数据处理的场景,比如接收来自上游接口的 Server-Sent Events(SSE) 或 流式 JSON 内容,并将其原样中转给前端页面或客户端。这种情况下,传统的 RestTemplate 缓存机制会…...
逻辑回归:给不确定性划界的分类大师
想象你是一名医生。面对患者的检查报告(肿瘤大小、血液指标),你需要做出一个**决定性判断**:恶性还是良性?这种“非黑即白”的抉择,正是**逻辑回归(Logistic Regression)** 的战场&a…...
【JVM】- 内存结构
引言 JVM:Java Virtual Machine 定义:Java虚拟机,Java二进制字节码的运行环境好处: 一次编写,到处运行自动内存管理,垃圾回收的功能数组下标越界检查(会抛异常,不会覆盖到其他代码…...
Mac软件卸载指南,简单易懂!
刚和Adobe分手,它却总在Library里给你写"回忆录"?卸载的Final Cut Pro像电子幽灵般阴魂不散?总是会有残留文件,别慌!这份Mac软件卸载指南,将用最硬核的方式教你"数字分手术"࿰…...
C# 类和继承(抽象类)
抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...
在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?
uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件,用于在原生应用中加载 HTML 页面: 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...
快刀集(1): 一刀斩断视频片头广告
一刀流:用一个简单脚本,秒杀视频片头广告,还你清爽观影体验。 1. 引子 作为一个爱生活、爱学习、爱收藏高清资源的老码农,平时写代码之余看看电影、补补片,是再正常不过的事。 电影嘛,要沉浸,…...
uniapp 开发ios, xcode 提交app store connect 和 testflight内测
uniapp 中配置 配置manifest 文档:manifest.json 应用配置 | uni-app官网 hbuilderx中本地打包 下载IOS最新SDK 开发环境 | uni小程序SDK hbulderx 版本号:4.66 对应的sdk版本 4.66 两者必须一致 本地打包的资源导入到SDK 导入资源 | uni小程序SDK …...
