我想在我的htaccess文件中创建一个mod重写,可以改变这个:
mydomain.com/abCdE
到此: mydomain.com/controller/view/parameter/abCdE
提前致谢!
P.S。我正在使用Zend Framework
斯特凡诺
答案 0 :(得分:3)
我过去曾创造过这种东西。这就是你想要的:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*) /parser.php?q=$1 [L,QSA]
这样,您网站上的每个现有文件和目录仍然可以使用,其他所有内容(*包括任何额外的_GET参数!)也将被传递。
如果您将其放在.htaccess文件中,请将RewriteRule更改为
RewriteRule (.*) parser.php?q=$1 [L,QSA]
这应该彻底回答你的问题。
答案 1 :(得分:2)
您可以使用mod_rewrite
将所有(或几乎所有)请求重定向到一个PHP文件,并使其完成工作:
RewriteEngine on
RewriteRule (.*) /parser.php?q=$1
如果你想留下一些页面,你可以设置条件:
RewriteEngine on
# Makes root of your site not to redirect to parser:
RewriteCond %{REQUEST_URI} !^/$
# Same for mypage.php
RewriteCond %{REQUEST_URI} !^/mypage.php$
# testdir and all files in it are not redirected to parser
RewriteCond %{REQUEST_URI} !^/testdir/
RewriteRule (.*) /controller/view/parameter$1