我正在努力实现这个简单的事情…
我有一些静态页面应该是这样的
www.domain.com/profile等。问题是如何编写重写规则以便..
会有一些像/ home这样的固定重写
我想每个存在不被重写的文件www.domain.com/test.php都应该去test.php
最后,如果没有find我希望它被redirect到static.php?_…..
RewriteRule ^/home/?$ /index.php?__i18n_language=$1 [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^/([^/]+)/?$ /static.php?__i18n_language=$1
这工作正常,但如果我inputindex.php或test.php甚至从其他redirectmach它把我在static.php …请帮助!
首先,你的
RewriteRule ^/home/?$ /index.php?__i18n_language=$1 [L]
正在使用一个参数($ 1)…但在第一部分没有定义什么参数应该是什么。
第二部分
RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^/([^/]+)/?$ /static.php?__i18n_language=$1
缺less[L],这是一个好主意
使用请求url作为i18n的参数,这意味着它的工作原理是这样的:example.com/login/ – > /static.php?__i18n_language=login
你能再举几个例子,说明你想要查询什么types的url,你希望发生什么,以及发生什么事情?
您可能需要使用RewriteLog指令创build日志,并尝试debugging您的mod_rewrite问题。