【问题标题】:Apache2 get 403 error when get Django project's static css fileApache2 获取 Django 项目的静态 css 文件时出现 403 错误
【发布时间】:2015-01-25 08:23:32
【问题描述】:

我是 Django 的新手,我刚刚完成了第一个教程(这是一个投票网站)。现在我用

运行它
python3 manage.py runserver

一切正常。现在我正在尝试使用 apache2 和 mod_wsgi 部署这个项目,并且我尝试了相同的文档,但是我尝试了多么努力,我无法让 apache2 访问我的静态 css 文件,即使认为 django 内容工作正常(包括访问数据库文件)。

这是我的 django 站点配置文件:

<VirtualHost *:80>
         ServerName localhost

         Alias /static/ /home/coeus/projects/django/mysite/polls/static/
         <Directory /home/coeus/projects/django/mysite/mysite/static>
         Require all granted
         </Directory>

         WSGIScriptAlias / /home/coeus/projects/django/mysite/mysite/wsgi.py

         <Directory /home/coeus/projects/django/mysite/mysite>
         <Files wsgi.py>
         Require all granted
         </Files>
         </Directory>

</VirtualHost>

我尝试将“mysite”的所有权设置为 www-data:www-data,但没有帮助。

Apache 的 access.log 如下所示:

127.0.0.1 - - [25/Jan/2015:16:18:40 +0800] "GET /static/polls/style.css HTTP/1.1" 403 522 "http://127.0.0.1/polls/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.91 Safari/537.36"

我完全被困在这里......

请帮忙。非常感谢!

【问题讨论】:

    标签: django apache static http-status-code-403


    【解决方案1】:

    我所做的是将我的静态文件存储在你的 index.fcgi 和 .htaccess 所在的 public_dir 上,也许在一个文件夹“静态”中,那么你需要做的就是从你的 html 指向那个文件夹

    <img src="/static/images/love.png" /> or <img src="http://mydoman.me/static/images/love.png" />

    对我来说效果很好

    【讨论】:

    • 我的意思是你应该尝试指向文件,就好像它们在不同的服务器上一样,比如使用完整路径名或其他东西
    • 我终于解决了——上面有一个错字,当我改变时,一切正常。:)
    猜你喜欢
    • 2015-03-13
    • 2022-10-13
    • 2018-10-30
    • 1970-01-01
    • 2020-07-26
    • 2019-01-30
    • 2018-12-31
    • 2016-01-12
    • 1970-01-01
    相关资源
    最近更新 更多