簡體   English   中英

錯誤403:禁止訪問您無權使用apache,mod-wsgi和django訪問此服務器上的/

[英]Error 403: Forbidden You don't have permission to access / on this server with apache, mod-wsgi and django

我是django和apache的新手。 我想通過apache和mod-wsgi發布django網站。 當我啟動httpd.exe時,在我的瀏覽器中收到403禁止錯誤。 我的Apache配置在這里

LoadFile "c:/users/zharf/appdata/local/continuum/anaconda3/envs/django/python36.dll"
LoadModule wsgi_module "c:/users/zharf/appdata/local/continuum/anaconda3/envs/django/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "c:/users/zharf/appdata/local/continuum/anaconda3/envs/django"



Alias /static/ /D:/user/JarfaSys/static/
<Directory D:/user/JarfaSys/static/>
    AllowOverride none
    Require all granted
</Directory>


WSGIScriptAlias / /D:/user/JarfaSys/JarfaSys/wsgi.py
WSGIPythonPath /D:/user/JarfaSys/
WSGIPassAuthorization On



<VirtualHost 127.0.0.1:443>
DocumentRoot D:/user/JarfaSys
    Alias /favicon.ico D:/user/JarfaSys/JarfaSys/favicon.ico
    Alias / /D:/user/JarfaSys/JarfaSys/wsgi.py

    ServerName 127.0.0.1
    SSLEngine on
    SSLCertificateKeyFile C:/Users/zharf/TibiFiles/host.key
    SSLCertificateFile  C:/Users/zharf/TibiFiles/host.cert
    SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown

    <Directory D:/user/JarfaSys/JarfaSys/>
    <Files wsgi.py>
      Require all granted
    </Files>
    </Directory>             

</VirtualHost>


WSGIScriptAlias / /D:/user/JarfaSys/JarfaSys/wsgi.py
WSGIPythonPath /D:/user/JarfaSys/
WSGIPassAuthorization On


<Directory D:/user/JarfaSys/JarfaSys/>
<Files wsgi.py>
  Require all granted
</Files>
</Directory>

wsgi.py是:

import os
import sys

path = "D:/Ghanbari/JarfaSys/JarfaSys"
    if path not in sys.path:
        sys.path.append(path)

os.environ['PYTHON_EGG_CACHE'] = '/tmp/.python-eggs'
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "JarfaSys.settings")

#print os.getenv("DJANGO_SETTINGS_MODULE")
#print os.getenv("PYTHON_EGG_CACHE")
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

錯誤日志文件在這里


[Fri Aug 23 16:29:26.827875 2019] [core:error] [pid 10784:tid 1092] (20024)The given path is misformatted or contained invalid characters: [client ::1:50025] AH00036: access to / failed (filesystem path 'C:/D:')
[Fri Aug 23 16:29:26.848875 2019] [core:error] [pid 10784:tid 1092] (20024)The given path is misformatted or contained invalid characters: [client ::1:50025] AH00036: access to /favicon.ico failed (filesystem path 'C:/D:'), referer: http://localhost/

Apache服務用戶可以訪問我的應用程序目錄。 我研究了許多類似的問題,但問題仍未解決。 任何建議,將不勝感激。

這是在Apache中設置項目的示例。 您的vhosts文件有一些錯誤

Listen 443

<VirtualHost *:443>
    ServerName localhost

    ErrorLog "logs/logname-error.log"
    CustomLog "logs/logname-access.log" common

    WSGIScriptAlias / "C:\workspace\your_project_path\wsgi.py"
    Alias /static/ C:/workspace/static/

    <Directory C:\your_project_path>
        <Files wsgi.py>
            Order deny,allow
            Allow from all
        </Files>
    </Directory>
</VirtualHost>

刪除/D:/...之前,使用上面的圖案。

還有一個wsgi.py的示例

import sys
import os

sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))

activate_env = r"C:\your_virtual_environment_path\Scripts\activate_this.py"
with open(activate_env) as f:
    exec(f.read(), {"__file__": activate_env})

from your_main import app as application

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM