0

我的 .htaccess/mod_rewrite 有问题:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^sometest/(.+)/page/([0-9]+)$ index.php?main=sometest/$1&page=$2
RewriteRule ^(.+)$ index.php?main=$1 [QSA]

这不起作用。如果我访问我的网站,则不包含 css 文件。我将它们包括在内,例如“/assets/css/blabla.css”。

如果我只删除一个 RewriteRule (不管是哪一个),它就可以工作。但我需要两个规则。

4

1 回答 1

0

您必须为此使用跳过标志skip|S=num

像 :

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d  [NC,OR]
RewriteCond %{REQUEST_FILENAME} !-f  [NC]
RewriteCond %{REQUEST_URI} ^(.*)/([^/]+)\.([^/]+)$ 
RewriteRule ^ - [S=2,L]
RewriteRule ^sometest/(.+)/page/([0-9]+)$ index.php?main=sometest/$1&page=$2 [S=1,L]
RewriteRule ^(.+)$ index.php?main=$1 [QSA,L]

有关更多信息,请参阅此页面http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewriterule

于 2013-04-09T12:40:33.103 回答