勉強したことのメモ

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 サーバー

  関連記事

htaccessファイルで海外からのアクセスをIP制限する方法

「サーバー立てたらすぐ攻撃が来る」と聞いたのでアクセスログを確認したところ、海外 ...

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

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

アクセスしてきたURLをRewriteRuleで書き換えたい

「http://aaa.com/a」というURLを叩いた際に「http://aa ...

htaccessファイルにて特定のIPの場合のみBasic認証無し、その他の場合はBasic認証有りにする方法

開発中の環境で指定したIPからのアクセスはBasic認証無しに、それ以外のアクセ ...

htaccessファイルでダイジェスト認証を行う方法

何かで調べ物をしていたときにdigest認証というものを見かけた。basic認証 ...