![]() 分類: 技術的な話 日付: 2017年06月01日公開 これはURL統一と常時SSLの対応を行った際( スマホURL統合&常時SSL対応(不具合サポート))に経験したことなのですが、.htaccessを使ったリダイレクトでディレクトリ除外が上手く動かない(と感じた)ことがありました。 URLの転送は.htaccessを使うと非常に楽に出来ます。以下は、一般的な転送の書き方です。 RewriteEngine on RewriteBase / RewriteRule ^$ 転送先URL [R=301,L] 特定のディレクトリ以下の転送を除外したい場合、そのディレクトリに RewriteEngine off と書かれた.htaccessファイルを置けば大丈夫です。 そこでテスト的にあるテストフォルダ以下を転送する設定と、そのテストフォルダにある特定ディレクトリは転送しない設定を上記の.htaccessを使って行いました。 すると、いくらRewirteEngine offのファイルを置こうと転送されてしまいます。つまり設定が正常に働いていません。何か間違いがないかと何度も.htaccessを見てみたのですが、問題はありません。 これかなりはまったのですが、どうやら 301リダイレクトの場合はブラウザがキャッシュをしてしまうようです。301は恒久的なURL移動を意味するので、ある意味自然な挙動かもしれません。 今回の場合は、一度特定ディレクトリ以下をリダイレクトオフにする前(つまり RewriteEngine off の .htaccessをアップする前)にアクセスしてしまいキャッシュされていました。 これを解決するには、301でなく302リダイレクトを使うかブラウザのキャッシュを削除すればOKです。 301リダイレクトをキャッシュする問題と、.haccessで特定ディレクトリを除外する方法は多く見つかったのですが、両者が組み合わさり上手く転送設定出来ないように感じる問題を取り上げたページは見つからなかったので、今回取り上げてみた次第です。 ちなみに、本番でリダイレクト設定を開始する場合、301でなく302で様子を見た方が安全だと今回感じました。もし誤った設定を301でしてブラウザにキャッシュされると問題です。 アプリゲーム紹介 Mocoゲーム作成で比較的人気の無料ゲーム モバイル麻雀ソリティア を公開中です。Google Play 及び App Store でダウンロード可能です。 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ⇒ より最新のブログ ⇒ より以前のブログ
|
最新エントリー![]()
⇒ より以前のブログ コンテンツ分類 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() カレンダー ![]() 2025年04月 ⇒ ブログカレンダー |