Apache2のインストール
Apache2 をインストールします。
root@www:~# apt -y install apache2
ウェルカムページを削除します。
root@www:~# rm -f /var/www/html/index.html
security.confを設定します。
root@www:~# vi /etc/apache2/conf-enabled/security.conf
25行目:変更します。
ServerTokens Prod
dir.confを設定します。
root@www:~# vi /etc/apache2/mods-enabled/dir.conf
2行目:ディレクトリ名のみでアクセスできるファイル名を追記します。
DirectoryIndex index.html index.cgi index.pl index.php index.rb index.py index.xhtml index.htm
apache2.confを設定します。
root@www:~# vi /etc/apache2/apache2.conf
70行目:サーバー名追記します。
ServerName ubuntuserver.jp
000-default.confを設定します。
root@www:~# vi /etc/apache2/sites-enabled/000-default.conf
11行目:管理者アドレス変更します。
ServerAdmin webmaster@ubuntuserver.jp
ドキュメントルート所有者を編集ユーザー(webmaster)に変更します。
root@www:~# chown webmaster. /var/www/html/
ドキュメントルート所有者を確認します。
root@www:~# ll /var/www/ 合計 0 drwxr-xr-x 2 root root 6 4月 24 22:46 cgi-bin drwxr-xr-x 2 webmaster webmaster 6 4月 24 22:46 html
URLのwwwを設定します。
root@www:~# vi /etc/apache2/sites-available/virtualhost-00-ubuntuserver.jp.conf
wwwなしに統一します。
<VirtualHost *:80>
ServerName ubuntuserver.jp
DocumentRoot /var/www/html
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.ubuntuserver\.jp
RewriteRule ^(.*)$ http://ubntuserver.jp/$1 [R=301,L]
</VirtualHost>
再起動します。
root@www:~# systemctl restart apache2
HTMLテストページを作成します。
root@www:~# vi /var/www/html/index.html <html> <body> <div style="width: 100%; font-size: 20px; font-weight: bold; text-align: center;"> Test Page </div> </body> </html>
Webブラウザを起動し、「http://ubuntuserver.jp」にアクセスし、動作確認をします。
TCP80番ポート開放
ルーターの設定で、TCP80番ポートを開放します。(設定方法はご自身の環境に合わせて調べてください。)
ポート開放テスト
開放確認サイトで開放確認をします。
ホスト名:linuxserver.jp
ポート番号:80
Perlのインストール
Perl をインストールします。
root@www:~# apt -y install perl
CGI モジュールを有効にします。
root@www:~# a2enmod cgi
apache2を再起動します。
root@www:~# systemctl restart apache2
「html」ディレクトリで CGI の実行を許可する設定します。
root@www:~# vi /etc/apache2/conf-available/html.conf
拡張子 cgi、pl、rb、py を CGI として設定します。
<Directory "/var/www/html">
Options +ExecCGI
AddHandler cgi-script .cgi .pl .rb .py
</Directory>
拡張子の設定を有効にします。
root@www:~# a2enconf html
「/usr/local/bin/perl」で、Perlコマンドへアクセスできるようにします。
root@www:~# ln -s /usr/bin/perl /usr/local/bin/perl
Perlのパスを確認します。
root@www:~# whereis perl perl: /usr/bin/perl /usr/local/bin/perl /usr/share/man/man1/perl.1.gz
再起動します。
root@www:~# systemctl restart apache2
CGIテストページを作成します。
root@www:~# vi /var/www/html/index.cgi #!/usr/bin/perl print "Content-type: text/html\n\n"; print "<html>\n<body>\n"; print "<div style=\"width: 100%; font-size: 20px; font-weight: bold; text-align: center;\">\n"; print "CGI Test Page"; print "\n</div>\n"; print "</body>\n</html>\n";
パーミッションを設定します。
root@www:~# chmod 705 /var/www/html/index.cgi
Webブラウザを起動し、「http://ubuntuserver.jp/index.cgi」にアクセスし、動作確認をします。
PHPのインストール
PHP をインストールします。
root@www:~# apt -y install php php-cgi libapache2-mod-php php-common php-pear php-mbstring php-mysql
PHP を設定します。
root@www:~# a2enconf php7.4-cgi
apache2を再起動します。
root@www:~# systemctl restart apache2
php.iniを設定します。
root@www:~# vi /etc/php/7.4/apache2/php.ini
962行目:行頭の「;」を削除してコメント解除し、自身のタイムゾーンを追記します。
date.timezone = "Asia/Tokyo"
再起動します。
root@www:~# systemctl restart apache2
PHPテストページを作成します。
root@www:~# vi /var/www/html/index.php <html> <body> <div style="width: 100%; font-size: 20px; font-weight: bold; text-align: center;"> <?php print "PHP Test Page"; ?> </div> </body> </html>
Webブラウザを起動し、「http://ubuntuserver.jp/index.php」にアクセスし、動作確認をします。
Rubyのインストール
Ruby をインストールします。
root@www:~# apt -y install ruby
CGI モジュールを有効にします。
root@www:~# a2enmod cgi
再起動します。
root@www:~# systemctl restart apache2
Rubyテストページを作成します。
root@www:~# vi /var/www/html/index.rb #!/usr/bin/ruby print "Content-type: text/html\n\n"; print "<html>\n<body>\n"; print "<div style=\"width: 100%; font-size: 20px; font-weight: bold; text-align: center;\">\n"; print "Ruby Test Page"; print "\n</div>\n"; print "</body>\n</html>\n";
パーミッションを設定します。
root@www:~# chmod 705 /var/www/html/index.rb
Webブラウザを起動し、「http://ubuntuserver.jp/index.rb」にアクセスし、動作確認をします。
Pythonのインストール
Python をインストールします。
root@www:~# apt -y install python
CGI モジュールを有効にします。
root@www:~# a2enmod cgi
再起動します。
root@www:~# systemctl restart apache2
Python テストページを作成します。
root@www:~# vi /var/www/html/index.py #!/usr/bin/env python print "Content-type: text/html\n\n"; print "<html>\n<body>\n"; print "<div style=\"width: 100%; font-size: 20px; font-weight: bold; text-align: center;\">\n"; print "Python Test Page"; print "\n</div>\n"; print "</body>\n</html>\n";
パーミッションを設定します。
root@www:~# chmod 705 /var/www/html/index.py
Webブラウザを起動し、「http://ubuntuserver.jp/index.py」にアクセスし、動作確認をします。
Perlモジュールのインストール
ビルドツールをインストールします。
root@www:~# apt -y install build-essential
CPANを起動します。
root@www:~# perl -MCPAN -e shell
「y」を入力してEnterキー押下します。
Would you like to configure as much as possible automatically? [yes] y
チェックを入れて「OK」をクリックするとインストールログが表示されます。
モジュールをインストールします。
Terminal does not support AddHistory.
cpan shell -- CPAN exploration and modules installation (v2.11)
Enter 'h' for help.
cpan[1]>
ImageMagikのインストール
ImageMagickをインストールします。
root@www:~# apt -y install imagemagick
perl ImageMagickをインストールします。
root@www:~# apt -y install libimage-magick-perl
関連のライブラリをインストールします。
root@www:~# apt -y install libmagickwand-dev libmagickcore libmagickcore-dev libmagickwand-dev root@www:~# apt -y install pkg-config root@www:~# apt -y install php-dev
サーバー証明書の取得
Certbotをインストールします。
root@www:~# apt -y install certbot
証明書を取得します。
ドキュメントルート:/var/www/html/
メールアドレス:webmaster@ubuntuserver.jp
Webサーバー名:ubuntuserver.jp
root@www:~# certbot certonly --webroot -w /var/www/html/ -m webmaster@ubuntuserver.jp -d centserver.jp --agree-tos
証明書自動更新を設定します。
root@www:~# vi /etc/cron.d/letsencrypt
下記を追記します。
00 16 * * 2 root /usr/bin/certbot renew --post-hook "service httpd restart"
SSLの設定
SSLを設定します。
root@www:~# vi /etc/apache2/sites-available/default-ssl.conf
3行目:管理者アドレス変更します。
ServerAdmin webmaster@ubuntuserver.jp
32行目:取得した証明書を指定します。
SSLCertificateFile /etc/letsencrypt/live/ubuntuserver.jp/cert.pem
33行目:取得した鍵ファイルを指定します。
SSLCertificateKeyFile /etc/letsencrypt/live/ubuntuserver.jp/privkey.pem
SSLを有効にします。
root@www:~# a2ensite default-ssl root@www:~# a2enmod ssl
再起動します。
root@www:~# systemctl restart apache2
Free Monitoring Test Toolsで「https://ubuntuserver.jp」の作動確認をします。
コメント