我有一些问题重写URL-S的.htaccess排除重写CSS和图像
我.htacces文件:
RewriteEngine On
RewriteBase /bsc/
RewriteRule ^(.+/?)$ index.php?url=$1 [NC,QSA,L]
我的文件和文件夹结构:
bsc/
---|.htaccess
---|index.php
---|css/
-------|style.css
---|images/
----------|logo.png
----------|image1.jpg
----------|image2.jpg
---|controller/
--------------|bootstrap.php
...
当我有下一个环节
localhost/bsc/page.html
比我的CSS工作还是可以上班的。 但是,当我旁边的链接:
localhost/bsc/page/subpage.html
localhost/bsc/page/subpage/subsubpage.html
localhost/bsc/page/subpage/subsubpage/subsubsubpage.html
我不能让CSS工作,CSS被重定向到
localhost/bsc/page/css/style.css
localhost/bsc/page/subpage/css/style.css
localhost/bsc/page/subpage/subsubpage/css/style.css
的问题,第二部分是我的链接不具有相同的扩展或任何延伸。 接下来的情况是可能的:
localhost/bsc/page/subpage
localhost/bsc/page/subpage/
localhost/bsc/page/subpage.php
localhost/bsc/page/subpage.html
localhost/bsc/page/subpage/subsubpage
localhost/bsc/page/subpage/subsubpage/
localhost/bsc/page/subpage/subsubpage.php
localhost/bsc/page/subpage/subsubpage.html
...
现在定义重写规则正在为不同的链接,但如何添加排除规则的CSS和图像?
我得到下次对CSS工作,为我所有条件的.htaccess:
RewriteEngine On
RewriteBase /bsc/
RewriteCond %{REQUEST_FILENAME} !\.css
RewriteRule ^(.+/?)$ index.php?url=$1 [NC,QSA,L]
阅读评论后一段时间,我得到下一个.htaccess文件有没有那么坏的结果:
RewriteEngine On
RewriteBase /bsc/
RewriteRule ^(.+/?)?(/|\.htm|\.php|\.html|/[^.]*)$ index.php?url=$1 [NC,QSA,L]
和我的链接标签:
<link rel="stylesheet" type="text/css" href="/bsc/css/style.css" />
现在只有一个条件的URL,当我无法得到正确的URL请求。接下来URL没有收到最后一个参数:
localhost/bsc/page/subpage
localhost/bsc/page/subpage/subsubpage
我没有收到子页面或subsubpage,其他的条件下工作。在这种情况下,Apache和托盘的.htaccess查找文件或文件夹....
是否可以添加缺少的条件或者是有可能使一些简单的重写规则或多个规则
缺少斜线'/'有帮助。 – Miroslav 2012-01-14 20:36:38
@MiroslavGojic很高兴听到:)我看到你刚刚加入,如果你可以选择答案作为正确的答案,我们可以得到这个问题关闭:) ..只是为了.. – Tehnix 2012-01-14 20:39:34
现在是95%的解决方案和我必须等待8个小时才能将我的答案提交给我,将会有新的.htaccess和一个缺失条件。 – Miroslav 2012-01-14 20:53:46