環境
- CentOS7
Nginx のインストール
$ sudo vi /etc/yum.repos.d/nginx.repo
# 下記追加
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
# インストール
$ sudo yum install -y nginx
$ nginx -v
# 起動
$ sudo systemctl start nginx.service
$ sudo systemctl enable nginx.service
$ sudo nginx
# ファイアーウォール
$ sudo firewall-cmd --permanent --zone=public --add-service=http
$ sudo firewall-cmd --permanent --zone=public --add-service=https
$ sudo systemctl restart firewalld
確認
ssh などでログインしたipアドレスにブラウザからアクセスしてみる
ex) http://192.168.56.101/
Welcome to nginx!
と書いてあれば確認完了
バーチャルホストの設定
index.html
$ cd /var/www/html
$ mkdir default
$ cd default
$ vi index.html
何か適当に記述
xxx.conf
$ cd /etc/nginx/conf.d
$ sudo cp default.conf default.conf.origin
$ sudo vi default.conf
server {
# ポート80番
listen 80;
# /etc/hosts に localhost は 127.0.0.1 (自分自身のサーバーを示すIP) に向くという初期設定がしてある
# 仮にサーバーのIPアドレスが 192.168.56.101 の場合、localhost だと http://192.168.56.101 にアクセスする設定になる
server_name localhost;
# ログの設定。なくても良い
access_log /var/log/nginx/logs/localhost.access.log main;
# ファイルの置き場所
root /var/www/html/default;
# ファイル名を省略したURLの場合にどのファイルを優先させるかの設定
index index.html index.htm;
}
# syntaxチェック
$ sudo nginx -t
# 停止
#$ nginx -s stop
# 再起動
$ sudo systemctl restart nginx.service
#$ nginx -s reload
先ほど確認したURLをもう一度確認する
ドメインを指定する
- http://sample.com でアクセスできるようする。
- ファイル名はわかりやすく sample.conf にした。
- /var/www/html/sample をルートにする
- ex) /var/www/html/sample/index.html = http://sample.com/index.html
$ sudo vi /etc/nginx/conf.d/sample.conf
server {
listen 80;
server_name sample.com;
access_log /var/log/nginx/logs/localhost.access.log main;
root /var/www/html/sample;
index index.html index.htm;
}
# 再起動
$ sudo systemctl restart nginx.service