Apacheというフリーウェアを使用してWebサーバーとして使えるよう設定します。
環境
CentOS 7.2.X
Apache 2.4.X
※以下、すべてroot権限で操作します。
1.httpd(Apache)のインストール
下記のコマンドでhttpd(Apache)をインストールします。
[root@ ~]# yum -y install httpd
インストールが開始され、Complete!と表示されればインストール完了です。
2.ファイアウォールの設定変更
httpとhttpsの通信を許可します。
[root@ ~]# firewall-cmd --permanent --zone=public --add-service=http [root@ ~]# firewall-cmd --permanent --zone=public --add-service=https
変更した内容を反映させるためリロードします。
[root@ ~]# firewall-cmd --reload
3.自動起動の設定
OS再起動時にhttpd(Apache)が自動起動するように設定します。
[root@ ~]# systemctl enable httpd Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
httpdに自動起動が設定されたか確認します。
[root@ ~]# systemctl list-unit-files -t service
リストが表示されますので、httpd.serviceの行がenableになっていれば自動起動が設定されています。
httpd.service enabled
4.httpd(Apache)を起動
httpd(Apache)を起動します。
[root@ ~]# systemctl start httpd
試しに、ブラウザから「VPSのIPアドレス」にアクセスしてみます。
下記のApacheテストページが表示されれば、httpd(Apache)が使用できる状態です。
5.httpd(Apache)の設定変更
httpd(Apache)の設定を変更します。
設定するには、/etc/httpd/conf/httpd.confを編集します。
[root@ ~]# vi /etc/httpd/conf/httpd.conf
ホスト名とポートを設定
www.example.com:80 となっていますので、行頭の「#」を削除し、設定したいホスト名に書き換えます。
#ServerName www.example.com:80 (↓行頭の「#」を削除し、www.example.com部分を設定するホスト名に変更) ServerName www.ホスト名:80
Directory”/var/www/html”の設定変更
Directory”/var/www/html”項目部分の設定を変更します。
<Directory "/var/www/html"> ・・・ # The Options directive is both complicated and important. Please see # http://httpd.apache.org/docs/2.4/mod/core.html#options # for more information. # Options Indexes FollowSymLinks ↓ Options -Indexes に変更 ・・・ # # AllowOverride controls what directives may be placed in .htaccess files. # It can be "All", "None", or any combination of the keywords: # Options FileInfo AuthConfig Limit # AllowOverride None ↓ AllowOverride All に変更 # ・・・ </Directory>
IfModule dir_moduleの設定変更
IfModule dir_module 項目部分にindex.phpを追加します。
<IfModule dir_module> DirectoryIndex index.html index.php </IfModule>
文字化け対応
AddDefaultCharset UTF-8 の行頭に # を追加し、コメントアウトします。
AddDefaultCharset UTF-8 (↓行頭に#を追加) #AddDefaultCharset UTF-8
以上で、/etc/httpd/conf/httpd.confの編集は完了です。
6.ドキュメントルートの所有者変更
一般ユーザからファイルをアップロードできるようにドキュメントルールの所有者変更をします。
[root@ ~]# chown 一般ユーザ名 /var/www/html/
下記のコマンドでhtmlの所有者がrootから一般ユーザに変更になっていることを確認できます。
[root@ ~]# ls -l /var/www total 0 drwxr-xr-x 2 root root 6 Jun 27 22:49 cgi-bin drwxr-xr-x 2 一般ユーザ名 root 6 Jun 27 22:49 html
7.テストページの削除
表示するページがない場合など上記のテストページ(welcome.conf)が表示されます。
しかし、VPSサーバが使用しているOSなどが分かってしまうためファイルを削除します。
[root@ ~]# rm -f /etc/httpd/conf.d/welcome.conf
8.httpd(Apache)を再起動
httpd(Apache)を再起動します。
[root@ ~]# systemctl restart httpd
9.設定確認
設定内容が問題ないか確認するため、確認します。
Syntax OKと表示されれば問題ありません。
[root@ ~]# httpd -t Syntax OK
10.SFTPでファイルをアップロード
Webサーバとして使える状態になりましたので、試しにSFTPでファイルをアップロードします。
※SFTPは、暗号化した通信で安全にファイルをアップロードできます。
SFTPに対応したアプリケーションの中から、今回はWinSCPを使用します。
SFTPで接続
下記の情報で接続します。
転送プロトコル:SFTP
ホスト名:VPSのIPアドレス
ポート番号:22(sshのポート番号を変更した場合、変更した番号)
ユーザ名:一般ユーザ名(rootでは接続不可)
パスワード:一般ユーザのパスワード
ファイルをアップロード
接続後、/var/www/htmlのディレクトリに移動してください。
下記のようなindex.htmlファイルを作成し、アップロードします。
<html> <body> Hello World! </body> </html>
ブラウザから「VPSのIPアドレス」にアクセスして、「Hello World!」 が表示されればアップロード完了です。