mac os + apache 2.4.33 + python 3.7.2 + django 2.1.5 + mod_wsgi 4.6.5(无法访问网站)

问题描述 投票:0回答:2

python从2.x升级到3.7.2我们的服务器配置后,我在运行服务器(无法访问站点)时遇到问题:

  • Mac OS 10.13.6(High Sierra)
  • Apache 2.4.33自定义安装
  • Python 3.7.2(Brew安装python3)
  • Django 2.1.5(通过python 3 env中的pip安装)
  • mod_wsgi 4.6.5(通过python 3 env中的pip安装)

我在httpd.conf文件中添加了以下两行(mod_wsgi-express module-config),删除了python 2.7引用:


LoadModule wsgi_module "/../MASP_ENV3/lib/python3.7/site-packages/mod_wsgi/server/mod_wsgi-py37.cpython-37m-darwin.so"
 
WSGIPythonHome "/../MASP_ENV3" 

也在httpd-vhosts.conf中:

WSGIDaemonProcess mysite.com processes=2 threads=15 display-name=%{GROUP} python-home=/Library/WebServer/Documents/MASP_ENV3 python-path=/Library/WebServer/Documents/mysite

WSGIProcessGroup mysite.com
WSGIScriptAlias / /Library/WebServer/Documents/mysite/wsgi.py

重新启动服务器后,当我们点击浏览器中的URL时,页面会继续加载一段时间(2-5分钟),之后会显示“无法访问站点”

如果能引导我提出有价值的建议,那就太棒了。谢谢!

python django macos apache mod-wsgi
2个回答
0
投票

apache错误日志中报告了什么?

你可以将参数请求超时添加到WSGIDaemonProcess并将其设置为低,比如说30秒吗?在这样的改变之后你会在大约30秒内得到“未到达地点”还是需要2-5分钟?

是否将wsgi配置为在任何地方写入日志?你能看到到达python应用程序的请求吗?

很抱歉写这些问题作为答案,但我仍然没有必要的级别来添加评论。


0
投票

问题是在python3系统安装目录中没有创建虚拟环境。我按照以下文档解决了问题: * https://modwsgi.readthedocs.io/en/develop/user-guides/virtual-environments.html#location-of-the-virtual-environment

另外,我与mod_wsgi作者的详细对话在这里:https://github.com/GrahamDumpleton/mod_wsgi/issues/396

© www.soinside.com 2019 - 2024. All rights reserved.