[英]htaccess rewriterule with PHP $_GET methods in URL? (From sub-sub-folder to root dir)
[英]Removing .php from url's in the htaccess, not i can't install wordpress on a sub folder
我的网站一直在使用以下代码从网址末尾删除.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/$ $1.php
RewriteRule ^([^/]+)/([^/]+)/$ /$1/$2.php
我现在已经在/clients/
文件夹中安装了wordpress,但是由于它正在重写wordpress,所以我不希望这样做,但是它不起作用,但是我不确定如何修复以上代码以阻止它在sup文件夹。
完整的htaccess
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/$ $1.php
RewriteRule ^([^/]+)/([^/]+)/$ /$1/$2.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$
RewriteRule (.*)$ /$1/ [R=301,L]
# compress text, html, javascript, css, xml:
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
# Or, compress certain file types by extension:
<FilesMatch "\.(php|html|css|js)$">
SetOutputFilter DEFLATE
</FilesMatch>
首先,您的重写代码看起来不正确。 这是固定代码,将跳过对/clients/
URI的重写。
## hide .php extension
# To externally redirect /dir/foo.php to /dir/foo
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
RewriteRule ^(?!clients/).*$ %1 [R,L,NC]
## To internally redirect /dir/foo to /dir/foo.php
RewriteCond %{REQUEST_FILENAME}.php -f [NC]
RewriteRule ^(?!clients/).*$ %{REQUEST_URI}.php [L,NC]
在/ clients /文件夹中,添加带有以下内容的.htaccess文件:-
RewriteEngine off
在里面。 这将关闭该文件夹及其子文件夹的mod_rewrite。
沃伊拉
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.