地味なセットアップを行ってきましたが、
いよいよ派手なセットアップに取り掛かります。
ウェブサーバのセットアップです。
まあウェブサーバが派手かどうかはともかく、
現在のサーバの花形であると思っています。
まずはApache2をウェブサーバとし、
サーバーサイドのPHPを動作させるため以下を実行します。
$ su - # apt install apache2 # apt install php # apt install libapache2-mod-php # /etc/init.d/apache2 restartここでブラウザでアクセスすれば
"Apache2 Ubuntu Default Page"が表示されるはずです。
次いで以下を実行します。
# echo '<?php phpinfo(); ?>' > /var/www/html/index.phpまた、設定ファイル"/etc/apache2/mods-available/dir.conf"の2行目の
DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htmを
DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htmに変更して
# /etc/init.d/apache2 restartを実行します。
ここでブラウザでアクセスしてPHPのコンフィグレーションが
表示されることを確認しておきます。
次いでドメインごとにサイトを分けるために以下を実行します。
# cd /etc/apache2/sites-available # a2enmod ssl rewrite # cp 000-default.conf <サーバのFQDN>.conf # cp default-ssl.conf <サーバのFQDN>-ssl.conf # a2ensite <サーバのFQDN> # a2ensite <サーバのFQDN>-ssl # a2dissite 000-default # cd /var # cp -rf www www/<サーバのFQDN> # /etc/init.d/apache2 restart設定ファイル"/etc/apache2/sites-available/<サーバのFQDN>.conf"と
"/etc/apache2/sites-available/<サーバのFQDN>-ssl.conf"を
以下のように編集します。
- サイト管理者のメールアドレスを設定。
ServerAdmin <メールアドレス>
- コンテンツを配置するディレクトリを設定。
DocumentRoot /var/www/<サーバのFQDN>/html
- サイトのドメインを設定。
ServerName <サーバのFQDN>
# apt install certbot # apt install python3-certbot-apache # certbot --apache certonly以下対話式に進める。入力するのは以下。
<メールアドレス> a y 1設定ファイル"/etc/apache2/sites-available/<サーバのFQDN>-ssl.conf"を
以下のように編集します。
- 証明書設定
SSLCertificateFile /etc/letsencrypt/live/<サーバのFQDN>/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/<サーバのFQDN>/privkey.pem
# /etc/init.d/apache2 reloadここでブラウザでアクセスして証明書が正式であることや
有効期限を確認しておきましょう。
なおこれはLet's Encriptから証明書を無償で発行してもらっていますが、
有効期限が3ヶ月間で、期限が切れる前に更新する必要があります。
とは言え更新は以下のコマンドで可能です。
# certbot renew
最後にPHP8です。
上記ですでにインストールしているPHPについては設定ファイル
"/etc/php/8.1/apache2/php.ini"を以下のように修正した方がよいでしょう。
date.timezone = "Asia/Tokyo" display_errors = On display_startup_errors = Onなお、"*_errors"項目はデバッグを楽にするためなので
本番環境ではOffにすることをお勧めします。
0 件のコメント:
コメントを投稿