0

.htaccess を使用してモバイル バージョンにリダイレクトするように Web サイトをセットアップしようとしています。私の主な意図は、画像ファイルを直接求めるリクエストを除いて、モバイルからのすべてのリクエストをリダイレクトすることです。イメージ ファイルは、ルート フォルダーの下の 3 つのフォルダーにあります: /img/ /files/ /userfiles/

私は以下を使用しています:

RewriteCond %{HTTP_USER_AGENT} "(android|blackberry|googlebot-mobile|iemobile|iphone|ipad|ipod|opera mobile|palmos|webos)" [NC]
RewriteCond %{REQUEST_URI} !^/files/(.*) [NC]
RewriteCond %{REQUEST_URI} !^/img/(.*) [NC]
RewriteCond %{REQUEST_URI} !^/userfiles/(.*) [NC]
RewriteRule ^(.*)$ http://mobilesite.com/$1 [L,R=302]

フォルダーの状態を確認せずに、モバイル デバイスからのすべての要求に対してリダイレクトが行われます。

www.normalsite.com/img/somefile.jpg にアクセスしようとすると、上記の条件によりそうできないはずなのに、まだ mobilesite.com にリダイレクトされます。

誰か助けてくれませんか?

ありがとうございました。

4

1 に答える 1

1

次のようになります。

# Assume this condition works.
RewriteCond %{HTTP_USER_AGENT} "(android|blackberry|googlebot-mobile|iemobile|iphone|ipad|ipod|opera mobile|palmos|webos)" [NC]

# Modified conditions
RewriteCond %{REQUEST_URI} !/files.* [NC]
RewriteCond %{REQUEST_URI} ![\.(jpg|png|jpeg|gif)].* [NC]
RewriteCond %{REQUEST_URI} !/userfiles.* [NC]
RewriteRule ^(.*)$ http://mobilesite.com/$1 [L,R=302]

必要に応じて、他の画像拡張子をここに追加します。

RewriteCond %{REQUEST_URI} ![\.(jpg|png|jpeg|gif)].* [NC]

于 2012-12-28T20:15:42.193 に答える