我需要一只手重写一些网址。 我需要的是从网址中删除文件夹名称,并删除php文件扩展名。 示例:
我需要mysite.com/foldername/about.php
成为
mysite.com/about/
我必须说我有几个需要访问的php静态文件
mysite.com/filename/
代替
mysite.com/foldername/filename.php
提前感谢您的时间。
亲切的问候。
答案 0 :(得分:0)
RewriteEngine On
RewriteRule ^/[.*]/?$ foldername/$1.php#{QUERY_STRING} [NC,L]
如果您没有使用QUERY_STRING(即您没有$ _GET参数),那么您可以删除#{QUERY_STRING}
注意,这会将根目录中的所有内容重写为foldername / NAME.php
如果您希望排除某些路径(例如css,js文件和其他路径),我建议您这样做:
RewriteCond RewriteCond %{REQUEST_URI} !^*.css$
RewriteCond RewriteCond %{REQUEST_URI} !^*.js$
RewriteCond RewriteCond %{REQUEST_URI} !^*.php$
RewriteCond RewriteCond %{REQUEST_URI} !^*DONTREDIRECT*$
RewriteRule ^/[.*]/?$ foldername/$1.php#{QUERY_STRING} [NC,L]