勉強したことのメモ

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

  関連記事

apacheで指定した期間(日時)のアクセスログを抽出する方法

apacheのaccess_logとerror_logで特定日時内のログのみを確 ...

日本語込みのURLをRewriteRuleで書き換える方法

WordPressのパーマネントリンク的なことをhtaccessで実現したい。具 ...

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

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

画像やPDF等のファイルへの直接アクセスは禁止し、PHP経由のみ表示やダウンロードを可能にする

ファイルアップローダーを作成する案件があり、アップロードしたファイルは「http ...

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

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