LoginSignup
1
3

More than 5 years have passed since last update.

複数サブドメ&Apache2.4~環境では macro が便利で簡単

Posted at

利点

Macroを使うと、
6ファイルあり、それぞれを別に編集したり、
インクルードしたりしていたコンフィグ類を、1ファイルに集約でき、
更新漏れもなくなりますね。

apache2.4のMacro例

複数編集の必要があったコンフィグを、超絶管理しやすいコンフィグに修正した例をどうぞ
sedの部分を消して自分用に直せばちゃんと動きます。

マクロ化した 6サーバ分のコンフィグ


  <Macro VHost $name $domain>
  <VirtualHost *:443>

      SSLStrictSNIVHostCheck off
      SSLCompression off

      AddDefaultCharset UTF8
      ServerSignature Off

      DocumentRoot "/var/www/$name"

      ServerName $domain

      SetOutputFilter DEFLATE

      Header set Strict-Transport-Security "max-age=30;"

      ### SSL設定
      ErrorLog "/var/log/httpd/$name.error_log"
      CustomLog "/var/log/httpd/$name.access_log" combined env=!nolog

      LogLevel warn
      SSLEngine on
      SSLProtocol all -SSLv2 -SSLv3
      SSLCipherSuite ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS
      SSLCertificateFile /etc/httpd/conf/ssl/$domain.signed.crt
      SSLCACertificateFile /etc/httpd/conf/ssl/internal.$domain.crt
      SSLCertificateKeyFile /etc/httpd/conf/ssl/$domain.com.key

      <Files ~ "\.(cgi|shtml|phtml|php3?)$">
      SSLOptions +StdEnvVars
      </Files>
      BrowserMatch "MSIE [2-5]" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0

      ### 外部ファイルに記載したSED 停止
      ExtFilterDefine cdn mode=output intype=text/html cmd="/bin/sed -f /etc/httpd/conf.d/cdn.sed"
      <Location />
        SetOutputFilter cdn
      </Location>

      RewriteEngine On
      SSLProxyEngine On
      DirectorySlash On
      RewriteCond %{REQUEST_METHOD} ^GET$

      ### カテゴリを調整
      RewriteRule /store/aaaaaaaaa     /products/list.php?category_id=1 [P]
      RewriteRule /store/bbbbbbbbb     /products/list.php?category_id=2 [P]
      RewriteRule /store/ccccccccc     /products/list.php?category_id=3 [P]
      RewriteRule /store/ddddddddd     /products/list.php?category_id=4 [P]

    </VirtualHost>
   </Macro>
  Use VHost master domain.com
  Use VHost tokyo tokyo.domain.com
  Use VHost nagoya nagoya.domain.com
  Use VHost oosaka oosaka.domain.com
  Use VHost fukuoka fukuoka.domain.com
  Use VHost hokkaido hokkaido.domain.com

  UndefMacro VHost

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3