我的网址像http://example.com/login.php,我希望它的显示像 http://example.com/login在我的网站首页上是login.php而不是 比索引,所以我已经在.htaccess中设置了此选项
这是.htaccess文件代码
ErrorDocument 403 403.php
ErrorDocument 404 404.php
ErrorDocument 405 405.php
ErrorDocument 501 501.php
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ login.php [NC,L]
RewriteCond %{REQUEST_METHOD} !^(GET|POST|HEAD)
RewriteRule .* - [R=501,L]
Options -Indexes
DirectoryIndex login.php
<LimitExcept GET POST>
deny from all
</LimitExcept>
ServerSignature Off
FileETag None
<IfModule mod_reqtimeout.so>
RequestReadTimeout header=20-40,MinRate=500 body=20,MinRate=500
</IfModule>
Header set X-FRAME-OPTIONS SAMEORIGIN
Header set Content-Security-Policy: "child-src 'self' allow 'self'; media-src *; img-src *; "
Header set Access-Control-Allow-Origin: "*"
Header set X-XSS-Protection "1; mode=block"
Header set Referrer-Policy "no-referrer | same-origin | origin | strict-origin | no-origin-when-downgrading"
Header edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure
答案 0 :(得分:0)
您可以使用:
# To externally redirect without .php
RewriteCond %{THE_REQUEST} \s/+(.+)\.php[\s?] [NC]
RewriteRule ^ /%1 [R=301,L,NE]
# To internally rewrite to .php
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^ %{REQUEST_URI}.php [L]