Apache htaccess重写删除子目录上的php扩展
我的htaccess文件位于以下文件夹下:Apache htaccess重写删除子目录上的php扩展,apache,.htaccess,mod-rewrite,Apache,.htaccess,Mod Rewrite,我的htaccess文件位于以下文件夹下: | |---这样更改: | |_ |____ |____ | |_ |____ |____ | |_ |____ |____ | |_ |____ |____ 到目前为止,我找到了什么代码: Options +FollowSymLinks -MultiViews RewriteEngine On RewriteRule file/edit/(.*)/ file.php?edit=$1 RewriteRule file/edit/(.*) file.
|
|---这样更改:
|
|_
|____
|____
|
|_
|____
|____
|
|_
|____
|____
|
|_
|____
|____
到目前为止,我找到了什么代码:
Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteRule file/edit/(.*)/ file.php?edit=$1
RewriteRule file/edit/(.*) file.php?edit=$1
RewriteRule file/id/(.*)/ file.php?id=$1
RewriteRule file/id/(.*) file.php?id=$1
# Remove file extension
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php [NC,L]
我面临的问题:如果我尝试,工作,但没有。您可以使用此。htaccess:
Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteCond %{THE_REQUEST} \s/+(.+?)\.php\?([^=]+)=([^\s&]+) [NC]
RewriteRule ^ /%1/%2/%3? [R=302,L,NE]
RewriteCond %{THE_REQUEST} \s/+(.+?)\.php\s [NC]
RewriteRule ^ /%1 [R=302,L,NE]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^file/edit/([^/]+)/?$ file.php?edit=$1 [L,QSA,NC]
RewriteRule ^file/id/([^/]+)/?$ file.php?id=$1 [L,QSA,NC]
# Remove file extension
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+?)/?$ $1.php [L]
about.php没有像about或about/:(另一件事,to或working)那样打开。现在,如果有人以某种方式打开,它将显示,内部服务器错误:(