【发布时间】:2014-09-09 23:55:50
【问题描述】:
我正在尝试遵循 1.6 文档中关于 Deploying static files on Apache using mod_wsgi 的教程。我已经使用 mod_wsgi 在 Apache 上部署了一个正在进行的站点,但我需要学习如何正确部署静态文件,而不是像我一直在做的那样链接到外部 Bootstrap CSS。
我的问题是我不知道文档中的以下示例设置在哪里或应该去哪里。
Below is the relevant DjangoProject text
但是,如果您别无选择,只能在同一服务器上提供媒体文件 Apache VirtualHost 作为 Django,您可以设置 Apache 来提供一些 URL 作为静态媒体,以及其他使用 Django 的 mod_wsgi 接口的媒体。
此示例在站点根目录设置 Django,但显式提供 robots.txt、favicon.ico、任何 CSS 文件以及 /static/ 中的任何内容 和 /media/ URL 空间作为静态文件。将提供所有其他 URL 使用 mod_wsgi:
然后给出下面我需要修改的示例代码
Alias /robots.txt /path/to/mysite.com/static/robots.txt
Alias /favicon.ico /path/to/mysite.com/static/favicon.ico
AliasMatch ^/([^/]*\.css) /path/to/mysite.com/static/styles/$1
Alias /media/ /path/to/mysite.com/media/
Alias /static/ /path/to/mysite.com/static/
<Directory /path/to/mysite.com/static>
Require all granted
</Directory>
<Directory /path/to/mysite.com/media>
Require all granted
</Directory>
WSGIScriptAlias / /path/to/mysite.com/mysite/wsgi.py
<Directory /path/to/mysite.com/mysite>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
后面是一些澄清说明
如果您使用的 Apache 版本早于 2.4,请替换 Require 全部授予全部允许,并添加行订单拒绝,允许 在它上面。
与我下面的<VirtualHost> 文件有一些相似之处。我应该把它添加到这个吗?还是应该存放在其他位置?
<VirtualHost *:80>
ServerName phaedrus.scss.tcd.ie/bias_experiment
ServerAlias phaedrus.scss.tcd.ie
WSGIScriptAlias /bias_experiment/ /var/www/bias_experiment/src/bias_experiment/index.wsgi
Alias /static/ /var/www/bias_experiment/src/bias_experiment/static/
<Location "/static/">
Options -Indexes
</Location>
</VirtualHost>
任何帮助都会很棒。
【问题讨论】: