day 40 nginx基础

第一章 Nginx 安装

1.配置Nginx 官方yum源

cat > /etc/yum.repos.d/nginx.repo << 'EOF'
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
EOF

更新yum源

yum makecache fast

2.安装依赖服务

yum install openssl-devel pcre-devel -y

3.安装nginx

yum install nginx -y

4.检查nginx配置语法

nginx -t

5.启动nginx

systemctl start nginx 

6.查看nginx状态

systemctl status nginx 

7.设置nginx 开机自启

systemctl enable nginx

8.测试服务

测试nginx 进程状态

ps -ef |grep [n]ginx

查看nginx 端口

netstat -lntup|grep nginx

curl查看本机回显

curl -I 127.0.0.1

第二章 Nginx配置

1.nginx 重要配置文件说明

[root@web-7 ~]# rpm -ql nginx 
/etc/nginx								# 配置文件目录
/etc/nginx/nginx.conf					# 主配置文件
/etc/nginx/conf.d						# 子配置文件目录
/etc/nginx/conf.d/default.conf			# 子配置文件
/usr/lib/systemd/system/nginx.service	# 启动文件
/usr/sbin/nginx							# Nginx命令
/usr/share/nginx/html					# 默认的代码目录
/usr/share/nginx/html/index.html		# 默认的网站首页
/var/log/nginx							# 日志

2.主配置文件解释

egrep -v "^$" /etc/nginx/nginx.conf  
===============第一块区域=================
user  nginx;	#运行用户
worker_processes  auto;		#worker进程数
error_log  /var/log/nginx/error.log notice;	 #错误日志
pid        /var/run/nginx.pid;	#进程PID

events {			
    worker_connections  1024;	#连接数
}

http {
    include       /etc/nginx/mime.types;	#媒体文件
    default_type  application/octet-stream;	 
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
    access_log  /var/log/nginx/access.log  main;	#访问日志
    sendfile        on;		#开启高效传输
    keepalive_timeout  65;	#长连接超时时间
    include /etc/nginx/conf.d/*.conf;	#子配置文件
}

3.子配置文件解释

egrep -v "^$|#" /etc/nginx/conf.d/default.conf

server {			
    listen       80;					#监听端口
    server_name  www.nginx.com;		#监听的域名/网址
    location / {						#匹配跳转
        root   /usr/share/nginx/html;	#代码目录
        index  index.html;				#默认首页文件
    }
}

第三章 Nginx 配置虚拟主机实战

1.需求

访问两个网站,名称分别为:

www.linux7.com
www.szlinux7.com

代码目录分别在:

/code/linux7/index.html
/code/szlinux7/index.html

网页内容:

www.linux7.com --> 7777
www.szlinux7.com  --> 9999

2.创建目录和首页

mkdir /code/linux7 -p
mkdir /code/szlinux7 -p
echo 7777 > /code/linux7/index.html
echo 9999 > /code/szlinux7/index.html

3.创建子配置文件

vim /etc/nginx/conf.d/linux7.conf
server {			
    listen       80;
    server_name  www.linux7.com;
    location / {
        root   /code/linux7;
        index  index.html;
    }
}
vim /etc/nginx/conf.d/szlinux7.conf
server {			
    listen       80;
    server_name  www.szlinux7.com;
    location / {
        root   /code/szlinux7;
        index  index.html;
    }
}

4.检查语法

nginx -t

5.重启nginx

systemctl restart nginx 

6.测试访问

windows添加hosts解析
cmd-->drivers

Windows:
修改这个文件: C:\Windows\System32\drivers\etc\hosts
10.0.0.7 www.linux7.com www.szlinux7.com

Linux添加hosts解析

vim /etc/hosts
10.0.0.7 www.linux7.com www.szlinux7.com

Linux测试:

curl www.linux7.com
curl www.szlinux7.com

第四章 Nginx配置文件

1.用户访问网站的组成
http://www.linux7.com/zhizhi.html
等同于
/code/linux7/zhizhi.html

2.优先级
端口 --> server name

3.默认配置
如果一个请求转发到了nginx服务器
但是所有的配置文件都没匹配上server name
那么这个请求将交给排名第一个的配置去处理
listen 8080 default_server;

原文地址:https://www.cnblogs.com/zhaocheng690/p/15609568.html