0

こんにちは、これは私の.htaccessファイル コードです

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php

それは完全に機能しますが、.php拡張子を強制的に非表示にできるかどうか疑問に思っていたので、www.example.com /foo.phpに行ってもwww.example.com/fooにリダイレクトされます

それを行う方法はありますか??

4

2 に答える 2

1

可能ですが、php 以外の URL が php の URL にリダイレクトされる場合に、リダイレクト ループが発生しないように注意する必要があります。また、php の URL が非 php の URL にリダイレクトされます。さらに、このアイデアは好きではありません。余分なリダイレクトが作成され、サイトの応答が遅くなるためです。

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

#Redirect non-php to php and stop futher processing
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php [L]

#redirect .php to non-php
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^(.*)\.php$ $1 [R=301,L]
于 2013-08-21T14:48:18.880 に答える