Hatena::ブログ(Diary)

hi3103のメモ帳

2017-11-04

さくらVPSサーバー初期設定 - Apacheのインストール

参考URL

Apacheインストール

# yum install httpd

Apacheのバージョンを確認

# httpd -v
Server version: Apache/2.4.6 (CentOS)
Server built:   Oct 19 2017 20:39:16

Apacheの起動

# systemctl start httpd
Apache再起動
# systemctl restart httpd
Apacheの停止
# systemctl stop httpd
Apacheの動作状況を確認
# systemctl status httpd

ファイアーウォールがhttp通信を遮断している状態なので通過許可を設定する

  • ついでにhttpsも同様の設定をしておく。
# firewall-cmd --add-service=http --zone=public --permanent
# firewall-cmd --add-service=https --zone=public --permanent
# systemctl restart firewalld

f:id:hi3103:20171104140912p:image:w600

サーバー起動時にApacheも起動するようにする

# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
インストール済みのサービスタイプのユニットファイル一覧から設定を確認する
# systemctl list-unit-files -t service
# systemctl --help
systemctl [OPTIONS...] {COMMAND} ...
(略)
-t --type=TYPE      List units of a particular type
(略)
Unit File Commands:
  list-unit-files [PATTERN...]    List installed unit files

FileZillaからSFTP接続してHTMLファイルをアップロードする

f:id:hi3103:20171104123424p:image

  • 実行するとユーザーのホームディレクトリに接続される
    • 例)ユーザー名がadminの場合:/home/admin

【番外】vi編集画面が見にくいので設定ファイルをつくる

# vi ~/.vimrc
set number #行番号を表示
set ignorecase #検索時の大文字/小文字の区別をしない
syntax on #コードを色分けする
highlight Comment ctermfg=LightCyan #syntax onのとき、コメント行の色を変える

ユーザーのホームディレクトリ直下の public_html をドキュメントルートに設定する

ディレクトリHTMLファイルを作る
  • FileZillaからやってもいいんだけど、Terminalからやるなら…
# cd /home/{ユーザー名}
# mkdir public_html
# cd public_html
# echo 'hello world' > index.html
public_htmlの所有者と権限を設定する
  • rootで入った状態で作ったため、所有者とグループがrootになっている。下記に変更する。
    • 所有者:apache
    • グループ:{ユーザー名}
# chown apache:{ユーザー名} /home/homepage/public_html 
# chmod 775 /home/homepage/public_html 
httpd.confで設定されているドキュメントルートを書き換える
# vi /etc/httpd/conf/httpd.conf
    114 #
    115 # DocumentRoot: The directory out of which you will serve your
    116 # documents. By default, all requests are taken from this directory, but
    117 # symbolic links and aliases may be used to point to other locations.
    118 #
    119 DocumentRoot "/var/www/html"
  • 上記119行目を以下の通り書き換える。
    • 前:DocumentRoot "/var/www/html"
    • 後:DocumentRoot "/home/homepage/public_html"
デフォルトのドキュメントルートディレクトリに施されていた設定を見直し、変更後のディレクトリ適用する
# vi /etc/httpd/conf/httpd.conf
    122 #
    123 # Relax access to content within /var/www.
    124 #
    125 <Directory "/var/www">
    126     AllowOverride None
    127     # Allow open access:
    128     Require all granted
    129 </Directory>
    131 # Further relax access to the default document root:
    132 <Directory "/var/www/html">
(略)
    145     Options Indexes FollowSymLinks
(略)
    152     AllowOverride None
(略)
    157     Require all granted
    158 </Directory>
ついでにCGI関連の設定をコメントアウトしておく(CGI使用しないため)
  • 250行目
    223 <IfModule alias_module>
(略)
    250     ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
    251 
    252 </IfModule>
  • 258〜262行目
    258 <Directory "/var/www/cgi-bin">
    259     AllowOverride None
    260     Options None
    261     Require all granted
    262 </Directory>
  • 297行目
    264 <IfModule mime_module>
(略)
    297     AddHandler cgi-script .cgi
)略)
    310 </IfModule>
Connection: close