在我的htaccess中我有
RewriteRule ^([^/]+)/?$ cms.php?seotitle=$1 [L]
想法是index.html将加载正常,然后在domain.com/anythinghere.html请求的任何内容将使用从cms.php获取文件的规则。
然而它不起作用 - 任何线索?真的需要这个排序asap。
答案 0 :(得分:1)
试试这个:
RewriteCond %{REQUEST_URI} !(index.html)
RewriteRule ^([^/]+)/?$ cms.php?seotitle=$1 [L]
另一种方法是使用-f
或-d
标志,这意味着现有文件或目录。
RewriteCond %{REQUEST_URI} !-d
RewriteCond %{REQUEST_URI} !-f
RewriteRule ^([^/]+)/?$ cms.php?seotitle=$1 [L]
使用此功能时,不会重写任何现有文件或目录。这很有用,特别是对于css或js文件。
答案 1 :(得分:0)
尝试此规则:
RewriteCond $1 !^(cms\.php|index\.html)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/?$ cms.php?seotitle=$1 [L]