我已经尝试过查看其他教程和示例,但没有什么比我的情况更合适。我的htaccess文件如下所示:
RewriteEngine on
rewritecond %{http_host} ^example.com [nc]
rewriterule ^(.*)$ http://www.example.com/$1 [r=301,nc]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !\..+$
RewriteCond %{REQUEST_URI} !/$
RewriteRule (.*) http://www.example.com/$1/ [R=301,L]
RewriteRule ^([^/\.]+)/?$ index.php?page=$1 [L]
RewriteRule ^view/([^/]+)/([^/]+)/?$ index.php?page=view&id=$1&title=$2
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([a-zA-Z0-9]+)
RewriteRule ^([a-zA-Z0-9]+)$ /%1/? [R=301,L]
ErrorDocument 404 /404
我正在使用PHP并需要重写/index.php?page=page&moreparamaters=1
但我在服务器上还有一个名为/ admin /的文件夹,我想从此文件夹中的文件中删除.php扩展名,以便:
/admin/lol.php
变为/admin/lol/
我有很多这些文件,所以我不能单独添加每个文件。如何在不影响index.php重写的情况下执行此操作?
由于
答案 0 :(得分:2)
你必须反思。假设您的所有文件都直接放在文件夹中(意思是没有子文件夹),这将起作用:
RewriteRule ^admin/([^\/]*)? /admin/$1.php [L,R]
在您的链接中,您可以编写/ admin / lol /或/ admin / lol,两者都将被重定向到/admin/lol.php