[server] https できたものを http にリダイレクトさせる on Apache


作業メモ。以下のようなことをしたいときの RedirectMatch の正規表現を忘れてしまいそうなので。

  • https でアクセスにきたものを http にリダイレクトさせる
  • その際、ホスト名とそれ以下の URL は保持されること

例) https://www.temp.domain.com/temp/temp.html できたものを http://www.temp.domain.com/temp/temp.html へリダイレクトさせる

  • 前提環境</p>
    • 複数のホスト名をサービスしているとして、temp-ssl.conf 上、Virtual Host で設定している
    • ここでは仮に temp.domain.com に https できたものを http にリダイレクトする

  • 1) /etc/httpd/conf/ or /etc/httpd/conf.d/ にある temp-ssl.conf に以下の記述を追記

<VirtualHost *:443>

ServerName temp.domain.com

ServerAlias temp.domain.com

RedirectMatch ^(.*)$ http://temp.domain.com$1

  • 2) Apache の再起動する # /etc/rc.d/init.d/httpd restart</p>
    • ここで httpd graceful するとゾンビプロセス(ps aux での status Z)がでてしまうケースがあった

正規表現はなかなか覚えられないので、なんかのときに役立てば。

</div>