WSGI脚本无法作为Python模块

时间:2018-02-08 19:21:19

标签: django apache2 mod-wsgi

我一直在尝试解决内部服务器错误我从本地安装的django 2.0.2 whlist尝试通过mod-wsgi在apache 2.4.27上的python 3.6.3 virtualenv中运行它-py3 4.5.17以守护进程模式运行。

更新

  

我已经解决了问题,并且没有剩余的额外错误。最初的问题是通过向WSGIDaemonProcess指令添加python-home和python-path参数来解决的。第二个问题是由于我没有配置静态文件引起的,我已经通过阅读有关静态文件主题的django文档进行了更正。因此,我不再需要帮助解决这些问题,我们可以将其标记为已解决

     

我已经完成了额外的故障排除,并且能够通过将wurst.conf中的WSGIDaemonProcess行更改为

,将内部服务器错误500转换为处不正确配置的新错误

`WSGIDaemonProcess wurst processes = 2 threads = 15 python-home = / home / mike / blog-env python-path = / home / mike / blog-env / wurstblog

  

技术我已经解决了我的初始问题但提出了一个新问题。

EndUpdate `

在我的apache2 error.log文件中,我可以看到

[Thu Feb 08 10:34:24.694864 2018] [wsgi:error] [pid 94364] [remote 127.0.0.1:47002] mod_wsgi (pid=94364): Target WSGI script '/var/www/wsgi-scripts/wurstblog.wsgi' cannot be loaded as Python module.

远程搜索互联网我发现了各种可能的解决方案 WSGI Script Cannot Be Loaded as Python Module -- 500 Internal Server Error

'How python is installed'
'Missmatch of mod-wsgi and python environment version'
'conflict with mod_python and mod_wsgi'

我不知道如何纠正我的python3安装或mod_python的问题

我在某处读到了wsgi脚本需要可执行所以ls -l /var/www/wsgi-scripts给出的 -rwxr-xr-x 1 root root 454 Feb 8 10:52 wurstblog.wsgi

它看起来像这样:

import os
import sys

from django.core.wsgi import get_wsgi_application
sys.path.append('/home/mike/blog-env/wurstblog/wurstblog')
os.environ["DJANGO_SETTINGS_MODULE"] = "wurstblog.settings"

application = get_wsgi_application()

blog-env是我的pthon3 virtualenv和wurstblog是我的django项目所在的地方 我已经配置了虚拟主机/etc/apache2/sites-enabled/wurst.conf

<VirtualHost *:80>

    ServerAdmin myname@nospam.com
    <Directory /var/www/wsgi-scripts>
        <Files wurstblog.wsgi>
        Require all granted
        </Files>
    </Directory>

</VirtualHost>

    WSGIPythonHome /home/mike/blog-env
    WSGIPythonPath /home/mike/blog-env/wurstblog
    WSGIScriptAlias / /var/www/wsgi-scripts/wurstblog.wsgi 
    WSGIDaemonProcess wurst processes=2 threads=15
    WSGIProcessGroup wurst
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined


# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

有没有人对我可以尝试纠正这个问题有任何建议,谢谢。

0 个答案:

没有答案