0

我正在尝试为 www.240list.com 调试我的 .htaccess 文件。

基本上,这是我的 htaccess 文件,用于我的 mvc / 目录重写文件等等。

Options +FollowSymlinks
RewriteEngine on

RewriteCond %{HTTP_HOST} ^[^\.]+\.[^\.]+$
RewriteRule ^.*$ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule .* - [L]

RewriteRule ^(\d+\/)?Css/(.*)$ Resources/css/$2 [L]
RewriteRule ^(\d+\/)?Javascript/(.*)$ Libs/Javascript/$2 [L]
RewriteRule ^(\d+\/)?Images/(.*)$ Resources/images/$2 [L]
RewriteRule .*$ App/index.php [L]

该站点没有加载我的 css 或图像,如果您通过重写 url 转到图像的位置,例如http://www.240list.com/Images/Logo.png ,它会重定向到我的索引.php 因为它正在为 mvc 框架加载自动加载器,如果前 3 个目录重写规则不匹配,就会发生这种情况。

奇怪的是,一切都在我的 Uniserver 上使用 htaccess 工作,我用于在我的 localhost 上进行开发,但是当在 hostgator 上时,css 和 images 目录还没有工作,但 JavaScript 是。如果重要的话,它们都具有相同的目录权限。

任何帮助表示赞赏。

4

1 回答 1

1

它似乎不起作用,因为它区分大小写。

试试这个:

RewriteRule ^(\d+\/)?Css/(.*)$ Resources/Css/$2 [L]
RewriteRule ^(\d+\/)?Javascript/(.*)$ Libs/Javascript/$2 [L]
RewriteRule ^(\d+\/)?Images/(.*)$ Resources/Images/$2 [L]
RewriteRule .*$ App/index.php [L]

只是为了记录,我总是避免在 url 和系统路径中使用大写字母来避免这种错误。

编辑: 我刚刚注意到 Javascript 在 Libs 中,而其他在 Resources 中。这样对吗?

于 2012-10-20T22:02:23.500 回答