ユーザ用ツール

サイト用ツール


サイドバー

vps:vps_05

prisoner web WEB設定

prisoner webのWEB設定を行う。

機能

準備

  • jailer側でportsの最新化を行う。
  • ports-mgmt/portupgradeを導入する。

Apache

インストール

  • www/apache22を導入

起動設定

etc/rc.confに以下を追加する。

apache22_enable="YES"

httpd.conf設定

usr/local/etc/apache22/httpd.confを修正する。

ServerRoot /usr/local
#ServerAdmin you@example.com
DocumentRoot "/usr/local/www"
# <Directory "/usr/local/www/apache22/data">
#
# 無効化
#
# </Directory>
<IfModule dir_module>
    DirectoryIndex index.html index.php
</IfModule>
<IfModule alias_module>
    # ScriptAlias /cgi-bin/ "/usr/local/www/apache22/cgi-bin/"
</IfModule>
# <Directory "/usr/local/www/apache22/cgi-bin">
#
# 無効化
#
# </Directory>
<IfModule mime_module>
    # phpを追加
    AddType application/x-httpd-php .php
    # cgi実行を有効化
    AddHandler cgi-script .cgi
</IfModule>
Include etc/apache22/extra/httpd-vhosts.conf
Include etc/apache22/extra/httpd-ssl.conf

httpd-vhost.conf設定

usr/local/etc/apache22/extra/httpd-vhost.confを修正する。

  • 不要な<VirtualHost *:80>~<VirtualHost>は無効化
  • <VirtualHost *:80>を以下の通り追加する。
    <VirtualHost *:80>
        DocumentRoot "/usr/local/www/dokuwiki"
        ServerName www.example.com
        
        <IfModule alias_module>
             # Aliasとして、/c-boardへのアクセスを/usr/local/www/c-boardへマップ
             Alias /c-board /usr/local/www/c-board
        </IfModule>
        
        <Directory />
             Options FollowSymLinks ExecCGI
             AllowOverride all
             Order allow,deny
             Allow from all
        </Directory>
    
        <Directory "/usr/local/www/c-board">
             Options FollowSymLinks ExecCGI
             AllowOverride all
             Order allow,deny
             Allow from all
        </Directory>
    </VirtualHost>

Digest認証設定

  • httpd-vhosts.confにて、認証を行いたいVirtualHostの<VirtualHost></VirtualHost>内に以下を追加する。
    <Directory "認証を行いたいディレクトリ">
       AuthType Digest
       AuthName "ようこそ的なメッセージ"
       AuthDigestDomain 「認証を行いたいディレクトリ」のどこから認証を始めるか
       AuthUserFile /usr/local/etc/apache22/.htdigest
       Require user 認証するユーザ名
    </Directory>
  • htdigest作成する。
    # cd /usr/local/etc/apache22
    # htdigest -c .htdigest 'AuthNmaeで設定した値' 認証するユーザ名

ログローテーション設定

etc/newsyslog.confに対象ファイル分を追加する。

/var/log/<対象ファイル名> 600 30 * @T02 J /var/run/httpd.pid 30

SSL設定準備

  • 証明書格納ディレクトリを作成する。
    # mkdir /usr/local/etc/apache22/ssl
  • 作成したcacert.pem, newcert.pem, serverkey.pemを/usr/local/etc/apache22/sslに配置し、アクセス権を設定する。
    # chmod 400 *.pem

httpd-ssl.conf設定

  • 証明書関連の修正を行う。
    SSLCertificateFile "/usr/local/etc/apache22/ssl/newcert.pem"
    SSLCertificateKeyFile "/usr/local/etc/apache22/ssl/serverkey.pem"
    SSLCACertificatePath "/usr/local/etc/apache22/ssl"
    SSLCACertificateFile "/usr/local/etc/apache22/ssl/cacert.pem"
  • VirtualHost関連の修正を行う。必要に応じて、digest認証設定も行う。
    <VirtualHost _default_:443>
        DocumentRoot "/usr/local/www/dokuwiki"
        ServerName www.example.com:443
        
        <IfModule alias_module>
              Alias /c-board /usr/local/www/c-board
              # /c-boardへのアクセスを/usr/local/www/c-boardへマップ
        </IfModule>
    
        <Directory />
              Options FollowSymLinks ExecCGI
              AllowOverride all
              Order allow,deny
              Allow from all
        </Directory>
        <Directory "/usr/local/www/c-board">
              # マップ先がDocumentRoot以外なので明示的にアクセス権限を設定
              Options FollowSymLinks ExecCGI
              AllowOverride all
              Order allow,deny
             Allow from all
        </Directory>
    </VirtualHost>

php

インストール

  • lang/php5
    • オプション
      • APACHE
      • MULTIBYTE

設定

  • php.iniを/usr/local/etc/php.ini.developmentから作成し、修正する。
    mbstring.language = Japanese
    mbstring.internal_encording = UTF-8
    mbstring.http_input = auto
    mbstring.http_output = UTF-8

その他

vps/vps_05.txt · 最終更新: 2012/04/30 14:39 by dummy@dummy