.htaccessにてスマートフォンサイトとPCサイトのユーザーエージェントを判別して振り分けをする設定を行ったのですが、iPhone Safariの「ホーム画面に追加」向けに設定したアイコン(link rel="apple-touch-icon-precomposed")が表示されなくなってしまいました。

.htaccessの上記振り分け設定を外せば、正常にアイコンが表示されることから、.htaccessの振り分け設定が原因と思われます。

そうはいっても.htaccessでスマートフォンサイトとPCサイトの振り分けをしたいと思いますので、上記振り分け設定をしても、iPhoneの「ホーム画面に追加」向けに設定したアイコンが正常に表示される方法を教えて頂けないでしょうか?
素人なものでして、.htaccess等への具体的な記述方法を教えていただけますと大変助かります。

なお、.htaccessのユーザーエージェントでの判別・振り分けの記述は下記の通りです。

RewriteEngine on
RewriteCond %{REQUEST_URI} !/pc/
RewriteCond %{HTTP_USER_AGENT} !(iPod|iPhone|Android.*Mobile|Windows\ Phone)
RewriteRule ^(.*)$ pc/ [R]
RewriteBase /

RewriteCond %{REQUEST_URI} /pc/
RewriteCond %{HTTP_USER_AGENT} (iPod|iPhone|Android.*Mobile|Windows\ Phone)
RewriteRule ^pc/(.*)$ $1 [R]
RewriteBase /

何卒よろしくお願いいたします。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2012/06/10 23:44:31
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:papa-tomo No.1

回答回数362ベストアンサー獲得回数107

ポイント300pt

アイコンのパス(href属性)が分からないので、たぶんこんな感じで回避できると思います。

RewriteEngine on

RewriteRule ^pc/icon\.png$ pc/icon.png [L]

RewriteCond %{REQUEST_URI} !/pc/
RewriteCond %{HTTP_USER_AGENT} !(iPod|iPhone|Android.*Mobile|Windows\ Phone)
RewriteRule ^(.*)$ pc/ [R]
RewriteBase /

RewriteCond %{REQUEST_URI} /pc/
RewriteCond %{HTTP_USER_AGENT} (iPod|iPhone|Android.*Mobile|Windows\ Phone)
RewriteRule ^pc/(.*)$ $1 [R]
RewriteBase /


赤色の行に実際のアイコンのパスを書けば良いと思います。

フォルダ構造が分かれば、もっと工夫のしようがあると思います。

id:papa-tomo

もしかしたらブラウザの表示フォントによっては、\の代わりに¥記号が表示されているかもしれませんが、そこは半角の\(バックスラッシュ)と理解してください。

2012/06/10 22:47:52
id:kumagoro779

パパトモさん、早速ありがとうございます!
赤字の部分をアイコンのパスに書き換えると無事表示されました。
大変助かりました。ありがとうございます!

2012/06/10 23:43:53

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません