Table of Contents

prisoner web設定

prisonerのwebをWEBサーバにする。

事前設定

jailerから各設定ファイルを直接編集する。各設定ファイルのプレフィックスは/usr/jail/webとなる。

OS設定

prisoner webを起動後、以下の設定を行う。

ソフトウェア導入

pkg

pkgにて、以下を導入。

pkg -j web install <pkg名>

pkg以外

個別に導入。

PHP設定

/usr/local/etc/php.ini-developmentを/usr/local/etc/php.iniコピーする。
コピー後、php.iniを編集する。

mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = auto
mbstring.http_output = UTF-8

always_populate_raw_post_data = -1

Let's Encrypt設定

Let's Encrypt 総合ポータルを参考に設定を行う。

Apache HTTP Server設定

自動起動設定

/etc/rc.confに追記する。

apache24_enable="YES"

httpd.conf設定

/usr/local/etc/apache24/httpd.confを編集する。

httpd-ssl.conf

/usr/local/etc/apache24/extra/httpd-ssl.confを編集する。

<VirtualHost _default_:443>
    DocumentRoot "/usr/local/www/dokuwiki"
    ServerName www.example.com:443
    ErrorLog "/var/log/httpd-error.log"
    TransferLog "/var/log/httpd-access.log"
    
    SSLEngine on
    
    SSLCertificateFile "/etc/letsencrypt/live/<ドメイン名>/fullchain.pem"
    SSLCertificateKeyFile "/etc/letsencrypt/live/<ドメイン名>/privkey.pem"
    
    <FileMatch ".\(cgi|shtml|phtml|php)$">
         SSLOptions +StdEnvVars
    </FileMatch>
    
    BrowserMatch "MSIE [2-5]" \
             nokeepalive ssl-unclean-shutdown \
             dwongrade-1.0 force-response-1.0
             
    <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
         Require all granted
    </Directory>

    <Directory "/usr/local/www/c-board">
         Options FollowSymLinks ExecCGI
         AllowOverride all
         Order allow,deny
         Allow from all
         
         AuthType Digest
         AuthName HOGE
         AuthDigestDomain /usr/local/www/c-board
         AuthDigestProvider file
         AuthUserFile /usr/local/etc/apache24/.htdigest
         Require valid-user
    </Directory>
    
CustomLog "/var/log/httpd-ssl_request.log" \
          "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>

Digest認証設定

コンフィグ確認

ログローテーション設定

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

/var/log/httpd-access.log 600 30 * @T02 J /var/run/httpd.pid 30
/var/log/httpd-error.log 600 30 * @T02 J /var/run/httpd.pid 30
/var/log/httpd-ssl_request.log 600 30 * @T02 J /var/run/httpd.pid 30

DokuWiki