Contents
1. Apache2
1.1 インストール
|
1 |
# pkg install apache24 |
1.2 apache24 - 初期設定
①extra/httpd-default.conf 編集
|
1 2 3 4 5 6 7 8 |
# vi /usr/local/etc/apache24/extra/httpd-default.conf セキュリティ対策のために以下のように設定を変更します。 55行目 : 「ProductOnly」に変更 ServerTokens ProductOnly 75行目 : 「On」に変更 HostnameLookups On |
➁httpd.conf 編集
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
# vi /usr/local/etc/apache24/httpd.conf 160行目 : コメント解除 LoadModule dav_module libexec/apache24/mod_dav.so 217行目 : 管理者のメールアドレスに変更 ServerAdmin [管理者メールアドレス] 226行目 : サーバのドメイン名に変更する ServerName [ドメイン名] 264行目 : 「Indexes」削除 Options FollowSymLinks 前項で設定した、「/usr/local/etc/apache24/extra/httpd-default.conf」への設定を有効にするために、下記の先頭の「#」を削除して、「Include」を有効にします。 518行目 : コメント解除 Include etc/apache24/extra/httpd-default.conf |
1.3 apache の起動
apacheの起動を有効化
|
1 2 |
# service apache24 enable apache24 enabled in /etc/rc.conf |
起動停止用のスクリプトは/usr/local/etc/rc.d/apache24
設定ファイルのチェック
記述が正しければ、Syntax OK と出力される
|
1 2 3 |
# service apache24 configtest Performing sanity check on apache24 configuration: Syntax OK |
Apache起動
|
1 2 3 4 |
# service apache24 start Performing sanity check on apache24 configuration: Syntax OK Starting apache24. |
クライアントから、サーバにアクセス(http://サーバーIPアドレス[またはドメイン名])すると下記のような表示が出れば正常です

1.4 バーチャルホストの設定
ドキュメントルート : /usr/local/www/apache24/data/[FQDN]/
ドメイン : [FQDN]
としてバーチャルホストを設定します
|
1 2 3 |
# vi /usr/local/etc/apache24/httpd.conf 最後のほうに下記を記入 Include etc/apache24/extra/bsd-vhost.conf |
/usr/local/etc/apache24/extra配下にbsd-vhost.conf新規作成(bsd-vhostは任意の名称でよい)
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
# cd /usr/local/etc/apache24/extra # vi bsd-vhost.conf 下記内容で作成 <VirtualHost *:80> ServerAdmin 管理者メールアドレス DocumentRoot "/usr/local/www/apache24/data/[FQDN]" ServerName [FQDN] ErrorLog "/var/log/httpd/[FQDN].error_log" CustomLog "/var/log/httpd/[FQDN].access_log" common </VirtualHost> <Directory /usr/local/www/apache24/data/[FQDN]> AddHandler cgi-script .cgi Options FollowSymlinks Includes AllowOverride All Require all granted </Directory> |
ディレクトリー作成
|
1 2 3 4 5 |
# mkdir /var/log/httpd # mkdir /usr/local/www/apache24/data/[FQDN] # chown -R www:www /usr/local/www/apache24/data/[FQDN] |
Apache再起動
|
1 2 3 4 5 6 7 8 |
# service apache24 restart Performing sanity check on apache24 configuration: Syntax OK Stopping apache24. Waiting for PIDS: 56749. Performing sanity check on apache24 configuration: Syntax OK Starting apache24. |
1.5 apache24 - cgi を動作
p5-CGI インストール
下記コマンドでインストールされているか確認
(portversionを利用するにはportupgradeを事前にインストール済であること)
|
1 2 |
# portversion -v | grep p5-CGI [Reading data from pkg(8) ... - 133 packages found - done] |
もし、インストールされていなければ下記コマンドでインストールする
|
1 2 3 |
# cd /usr/ports/www/p5-CGI # make # make install |
httpd.conf の編集
|
1 2 3 4 5 6 7 8 9 10 11 12 |
# vi /usr/local/etc/apache24/httpd.conf 166、169行のコメント解除 <IfModule !mpm_prefork_module> LoadModule cgid_module libexec/apache24/mod_cgid.so </IfModule> <IfModule mpm_prefork_module> LoadModule cgi_module libexec/apache24/mod_cgi.so </IfModule> 431行目 : コメント解除 AddHandler cgi-script .cgi |
Apache再起動
|
1 2 3 4 5 6 7 8 |
# service apache24 restart Performing sanity check on apache24 configuration: Syntax OK Stopping apache24. Waiting for PIDS: 56818. Performing sanity check on apache24 configuration: Syntax OK Starting apache24. |
2. apache24 - PHP 8.4
2.1 PHPインストール
インストールできるPHPのバージョン確認
|
1 2 3 4 5 |
# pkg search php | egrep '^php[0-9]+-[0-9]' php82-8.2.30 PHP Scripting Language (8.2.X branch) php83-8.3.29 PHP Scripting Language (8.3.X branch) php84-8.4.16 PHP Scripting Language (8.4.X branch) php85-8.5.1 PHP Scripting Language (8.5.X branch) |
上記の通りphp82,php83,php84,php85がインストールできる、今回はphp84をインストールする
|
1 |
# pkg install php84 |
2.2 php84-extensionsインストール
|
1 |
# pkg install php84-extensions |
2.3 mod_php84 インストール
|
1 |
# pkg install mod_php84 |
2.4 PHP - 初期設定
①コンフィグレーションファイル「php.ini」の設定
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
# cd /usr/local/etc/ # cp php.ini-production php.ini # vi /usr/local/etc/php.ini 699行目 post_max_size = 300M 851行目 upload_max_filesize = 200M 966行目タイムゾーンの設定、コメント解除し"Asia/Tokyo"追記 [Date] ; Defines the default timezone used by the date functions ; http://php.net/date.timezone date.timezone = "Asia/Tokyo" |
➁httpd.conf の編集
|
1 2 3 4 5 6 7 8 9 10 11 |
# vi /usr/local/etc/apache24/httpd.conf 284行目 ディレクトリのインデックスとして「index.php index.cgi」を使う <IfModule dir_module> DirectoryIndex index.html index.php index.cgi </IfModule> 423行目当たりに 以下の2行を追記。 AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps |
Apache設定チェック
Syntax OKと表示されれば正常
|
1 2 3 |
# service apache24 configtest Performing sanity check on apache24 configuration: Syntax OK |
Apache再起動
|
1 2 3 4 5 6 7 8 |
# service apache24 restart Performing sanity check on apache24 configuration: Syntax OK Stopping apache24. Waiting for PIDS: 57824. Performing sanity check on apache24 configuration: Syntax OK Starting apache24. |
2.5 PHP-fpmの有効化
php-fpmは既にインストールされていますので有効化します
|
1 2 |
# sysrc php_fpm_enable=YES # service php_fpm start |
確認する
|
1 2 |
# service php_fpm status php_fpm is running as pid 1520. |
apache設定ファイルの編集
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
# vi /usr/local/etc/apache24/httpd.conf 129、133行の先頭の「#」を削除して、「proxy_module」「proxy_fcgi_module」を有効化します。 LoadModule proxy_module libexec/apache24/mod_proxy.so LoadModule proxy_fcgi_module libexec/apache24/mod_proxy_fcgi.so 444-446行目当たりの下に追加 #AddType text/html .shtml #AddOutputFilter INCLUDES .shtml </IfModule> <FilesMatch "\.php$"> SetHandler "proxy:fcgi://127.0.0.1:9000" </FilesMatch> <FilesMatch "\.phps$"> SetHandler "proxy:fcgi://127.0.0.1:9000" </FilesMatch> |
apache再起動
|
1 |
# service apache24 restart |
ウェブサーバのドキュメントルートに「info.php」を作成
|
1 2 3 4 |
# vi /usr/local/www/apache24/data/[FQDN]/info.php <?php phpinfo(); ?> |
ブラウザで「http://[FQDN]/info.php」にアクセスすると下記のように表示されればOK

