【发布时间】:2013-04-28 07:02:43
【问题描述】:
我有一个运行以下目录结构的服务器:
/public_html
| - /fingertools
| - /css
| - /static
| - /media
| - /js
| - .htaccess
我的.htaccess在“public_html”文件夹的根目录下,网站的主要文件在“fingertools”文件夹下,是一个Django项目。
我想通过 .htaccess 将所有对 http://mydomain.com/ 的请求重写到“fingertools”文件夹,除了 http://mydomain.com/static/ 中的任何文件都应该重定向到“静态”文件夹。
我无法执行此操作,我需要将所有 CSS 和 JavaScript 放入此文件夹以使网站正常工作。
到目前为止我有这个:
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !(fingertools)
RewriteRule ^(.*)$ fingertools/$1 [L]
这将我重定向到我的 Django 项目,给我一个 404 错误,因为没有在 urls.py 文件中映射 /static/ URL。有任何想法吗?非常感谢
【问题讨论】:
-
不要那样做。 Django 不应该放在 DocumentRoot 文件夹下。您应该只将
/static/文件夹 mapped 映射到请求,但应用程序/站点的其余部分应该以其他方式公开,例如作为wsgi应用程序