文章目录
前言
记录Apache在局域网中部署Django的步骤,参考了一些文档,折腾了一天终于部署成功了。主要出问题的地方:1.mod-wsgi的安装;2.虚拟环境中的python路径,3.Django的wsgi.py路径问题。
一、Apache安装
-
下载网址:https://www.apachelounge.com/download/additional/ 。我的python版本是3.10.10,选择httpd 2.4.57 VS16 Last VS16。其它Python版本对应的Apache版本参考文档:https://www.cnblogs.com/GreatPlanHero/p/18108385
-
解压下载的Apache压缩包,到C:\Apache24目录,启动程序位于C:\Apache24\bin\httpd.exe,如果不是这个目录,需要先在Apache24\conf\con\httpd.conf中把Define SRVROOT "c:/Apache24"修改成你的Apache安装路径,否则安装mod-wsgi会出错。
二、mod-wsgi安装
- 一些文档中说去网站http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi下载后安装,但这个网站已关停了。
- 改为使用pip install mod-wsgi直接安装,需要注意的是,如果Django的运行环境是在虚拟环境中,例如使用virtualenv建立的env虚拟环境,则需要进入到这个虚拟环境env中并激活,再用pip安装,不能直接在全局环境中安装。并且需要检查httpd.conf中的路径Define SRVROOT “c:/Apache24”,是否与实际解压路径一致。
- 打开命名行窗口,在虚拟环境env中激活后运行mod_wsgi-express module-config,如果原来的Django项目文件夹在D盘,然后连同文件夹里的env虚拟环境一起全部复制到C盘,那么运行上述mod_wsgi命名后,就会出现下图中路径依然指向D盘的情况,但这并不影响Apache的正常运行。显示的这些信息后面要复制到httpd.conf中。
三、修改httpd.conf
- 用记事本打开Apache24\conf\con\httpd.conf,修改前先备份,先在命令行cmd里使用ipconfig获取本机的ip地址,例如192.168.0.103,然后修改httpd.conf如下:
Define SRVROOT "c:/Apache24" # 修改安装路径
#