gpt4 book ai didi

python - Apache django 以及静态和媒体文件服务

转载 作者:太空宇宙 更新时间:2023-11-03 18:23:07 24 4
gpt4 key购买 nike

我有一个 Django 项目,我终于设法使用 apache 来提供服务。我想要变得非常简单,因此尽管我的测试服务器正在提供/media 和 static 服务,但我没有将它们包含在我的 site.conf 文件中。我想首先检查部署是否有效,然后让 apache 提供静态文件。但是,说实话,Apache 正在从媒体文件夹中提供文件,而我无需执行任何操作。我的 apache 配置是

<VirtualHost *:80>
ServerAdmin webmast@rhombus.com
ServerName myrhombus.com
ServerAlias www.myrhombus.com
WSGIScriptAlias / /srv/www/rhombus2/rhombus/wsgi.py
<Directory /srv/www/rhombus2/rhombus>
<Files wsgi.py>
Require all granted
</Files>
</Directory>

Alias /static/ /srv/www/rhombus2/static/
Alias /media/ /srv/www/rhombus2/media/

<Directory /srv/www/rhombus2/static>
Require all granted
</Directory>

<Directory /srv/www/rhombus2/media>
Require all granted
</Directory>


</VirtualHost>

正如您所见,没有媒体或静态别名。

我的 urls.py

urlpatterns = patterns('',
# Examples:
#differnet urls here etc...
# Uncomment the admin/doc line below to enable admin documentation:
# url(r'^admin/doc/', include('django.contrib.admindocs.urls')),

# Uncomment the next line to enable the admin:
url(r'^admin/', include(admin.site.urls)),
)

if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root = settings.MEDIA_ROOT)

这怎么可能?

编辑:我做了你在下面描述的更改,但现在我的态度很奇怪:)我没有得到任何媒体或静态服务(403错误),并且第一次单击任何链接或地址栏都会给我一个400错误,第二个正常打开网页。

错误日志

[Tue May 20 10:12:56.049081 2014] [authz_core:error] [pid 1360:tid 140612925908736] [client 127.0.0.1:48360] AH01630: client denied by server configuration: /serv, referer: http://www.myrhombus.com/accounts/login/

我在访问该网站时收到错误请求(400)。如果我再次单击,它会正常打开网站,但我的 error.log 中仍然出现相同的错误。

最佳答案

这是因为您专门添加了一些 django 媒体服务 URL 模式。您的担心是对的!

+static(settings.MEDIA_URL, document_root = settings.MEDIA_ROOT)

您正在通过 python 在 MEDIA_URL 上提供 MEDIA_ROOT ;除开发期间外不建议使用。

您应该将该添加内容包含在 if settings.DEBUG = True 语句中。

if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root = settings.MEDIA_ROOT)

关于python - Apache django 以及静态和媒体文件服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23740169/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com