0

私のホスティングアカウントには、ドメインがあります。1つはルートにあり、もう1つは/example/フォルダーにあります。これが私のメインの.htaccessファイルのリダイレクトコードです。これは、今説明した関数とは別に正常に機能します。この機能は以前は機能していましたが、不思議なことに停止しました-

Options -MultiViews
RewriteEngine On
RewriteBase /

RewriteRule ^/example(.*)$ http://example.com/$1 [R=301,L]
# Rewrite /example to http://example.com

# Remove .php from file names and force added slash
# http://stackoverflow.com/questions/1068595/htaccess-code-to-remove-extension-and-addforce-trailing-slash
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{THE_REQUEST} ^GET\ /[^?\s]+\.php
RewriteRule (.*)\.php$ /$1/ [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*)/$ $1.php [L]

RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule .*[^/]$ $0/ [L,R=301]

何か案は?

4

1 に答える 1

1

次のように、先頭のスラッシュを削除してみてください。

RewriteRule ^example(.*)$ http://example.com/$1 [R=301,L]
于 2013-03-02T16:01:47.877 に答える