-2

ユーザーが「 mysite.com OR http://mysite.com OR 「www.mysite.com 」のようなリンクを入力またはクリックすると、 http 」に移動するようにURLを書き換えたい ://www.mysite.com .

現在、.htcaccess ファイル内で次のコードを使用していますが、何もしていないようです。

RewriteEngine On
RewriteCond !^www\.mysite\.com [NC]
RewriteCond %{HTTP_HOST}   !^$
RewriteCond $1 !^(favicon\.ico|favicon\.png|media|robots\.txt|crossdomain\.xml|css|js)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/?(.*) http://www.mysite.com/$1 [L,R=301,NE]

RewriteCond $1 !^(favicon\.ico|favicon\.png|media|robots\.txt|crossdomain\.xml|css|js)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?url_params=$1 [L,QSA]

<filesMatch "\\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$">
    #Header set Cache-Control "max-age=29030400, public"
</filesMatch>
<filesMatch "\\.(css)$">
    #Header set Cache-Control "max-age=29030400, public"
</filesMatch>
<filesMatch "\\.(js)$">
    #Header set Cache-Control "max-age=29030400, private"
</filesMatch>
<filesMatch "\\.(xml|txt)$">
    #Header set Cache-Control "max-age, public, must-revalidate"
</filesMatch>

※エラー修正しました。

サイトが読み込まれるようになりましたが、たとえば mysite.com にアクセスしてもhttp://www.mysite.comにリダイレクトされません。

4

1 に答える 1

0

わかりました、解決しました。書き換え条件が間違った順序であったことがわかりました。

正しい方法:RewriteCond $ 1!^(favicon.ico | favicon.png | media | robots.txt | crossdomain.xml | css | js)RewriteCond%{REQUEST_FILENAME}!-f RewriteCond%{REQUEST_FILENAME}!-d RewriteRule ^(。 *)$ index.php?url_params = $ 1 [L、QSA]

RewriteCond!^ www.mysite.com [NC] RewriteCond%{HTTP_HOST}!^ $ RewriteCond $ 1!^(favicon.ico | favicon.png | media | robots.txt | crossdomain.xml | css | js)RewriteCond%{REQUEST_FILENAME }!-f RewriteCond%{REQUEST_FILENAME}!-d RewriteRule ^ /?(。*)http://www.mysite.com/ $ 1 [L、R = 301、NE]

于 2013-03-11T02:56:06.817 に答える