CentOS7 + Nginx

環境

  • 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 をルートにする
$ 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

関連投稿