0

サーバーに .htaccess ファイルがあり、mod_rewrite を使用して URL の .php 拡張子を隠しています。そうhttp://www.mysite.com/home.phpなるhttp://www.mysite.com/home

しかし、ページが見つからないという 404 エラー メッセージが表示されます。リンクを絶対パスに変更する必要がありますか? ユーザーが入力しようとしてもhttp://www.mysite.com/homehttp://www.mysite.com/home.phpページが見つからなかったと表示されるからです。

これが私のhtaccesファイルの内容です:

RewriteEngine On

RewriteCond %{THE_REQUEST} ^\w+\ /(.*)\.php(\?.*)?\ HTTP/
RewriteRule ^ http://%{HTTP_HOST}/%1 [R=301]

RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule .* $0.php
4

1 に答える 1

0
RewriteEngine On
# turn on the mod_rewrite engine

RewriteCond %{REQUEST_FILENAME}.php -f
# IF the request filename with .php extension is a file which exists
RewriteCond %{REQUEST_URI} !/$
# AND the request is not for a directory
RewriteRule (.*) $1\.php [L]
# redirect to the php script with the requested filename

私が投稿した例を試してみてください。これは、PHP拡張機能を削除するために機能するはずです

于 2013-04-04T00:32:15.583 に答える