勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

htaccessでスマホ判別とCookie制御する方法

   2024/02/25  Apache サーバー

サイトを閲覧しているデバイスがスマホ且つ特定のCookieの値が入っているユーザーのみ、リダイレクトを行いたかった。また、PHPやJavaScriptはできれば控えたくて、他の方法を探したところhtaccessが手軽そうだったので方法のメモ。

 

対応方法

ソースコード

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_URI} !/sp/
RewriteCond %{HTTP_USER_AGENT} (iPod|iPhone|iPad|Android|Windows\ Phone)
RewriteCond %{HTTP_COOKIE} debug=on
RewriteRule ^(.*)$ sp/ [R,QSA,L]

解説

  • 3行目 URLに/sp/を含まないアクセス
  • 4行目 ユーザエージェントがスマホのもの
  • 5行目 Cookieでdebugというキーにonが入っているもの
  • 6行目 /sp/にリダイレクトさせる

 

その他

Cookieまでhtaccessで触れるというのは知らなかったので驚き。

 - Apache サーバー

  関連記事

複数(PHP / metaタグ / htaccess)の方法で301リダイレクト

サイトのディレクトリやファイル名を大幅に変えるという案件があった。それ自体は問題 ...

特定ディレクトリ以下のBasic認証を無効化する方法

Basic認証を設定しているサイトがあり、そちらを解除したかった。通常の場合だと ...

.htaccessでURLの末尾のphpという拡張子が無い場合でもページを表示させる方法

「/hoge/test.php」のようなディレクトリ・ファイル名の場合は「htt ...

フォルダにリンク制限をかける

imgというフォルダがあり、直接URLを叩いても 中身を見られないけど、同一サー ...

htmlファイル内でPHPを動かす(AddHandler)

サイトを引き継ぐことがあり、ソースを確認していると拡張子はhtmlなのにPHPの ...