【Linux】nginx服务器的安装、配置

1.nginx

Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行(摘自百度百科)

优点

优点 说明
高并发 基于 epoll/kqueue 模型开发,能够支持高达 50,000 个并发连接数的响应
内存开销小 Nginx采用C进行编写,不论是系统资源开销还是CPU使用效率都比 Perlbal 要好很多
简单稳定 配置简单(一个conf文件),运行简单(nginx命令),而且运行稳定
模块化程度高 支持插件化配置
低成本 nginx支持负载均衡功能,而且该软件是免费开源的

缺点

缺点 说明
动态处理差 nginx善于处理静态文件,处理动态页面的能力相对于Apache等重量级web软件稍弱

2.安装和命令

Ubuntu安装

apt-get install nginx -y

常用命令

# 启动/停止/重启 ngix
sudo systemctl [start|stop|reload] nginx

nginx -V # 查看版本和其他信息
nginx -v # 查看版本
nginx -c /etc/nginx/nginx.conf # 使用配置文件
nginx -s [stop|reload] # [关闭|重启]
nginx -t  # 可以使用此命令判断配置文件是否正确

3.配置

3.1 nginx默认目录
目录 说明
/etc/nginx 工作目录
/usr/sbin/nginx 执行文件
/var/log/nginx 日志文件
/var/www/html/ web目录
3.2 nginx默认配置文件
目录 说明
/etc/nginx/nginx.conf 默认文件(全局配置)
/etc/nginx/conf.d 存放自定义的conf文件
/etc/nginx/{sites-available/sites-enabled/conf.d} 其他目录(存放第三方应用的配置文件)
3.3 配置参数

一个配置文件里主要有全局配置段、http配置段、server配置段、location配置段

server配置
新建一个conf配置文件,里面主要配置server,一个server代表一个服务

server {
     
	# 设置要监听的ip、端口
    listen 8000;
    # 当一个主机存在多个网站时,可以通过Server_name指定域名,例如server_name www.example.com;
    server_name www.mysite.com;
    # 指定Server相应请求的HTML文件所在路径
    root /var/www/html;
    # 定义相应请求后返回的文件名或格式
    index index.html index.htm index.nginx-debian.html;
}

上面的listen是指监听的ip和port

形式 说明 举例
IP:Port 精确指定IP和端口 listten 192.168.205.153:8080
IP 只指定IP,默认监听80端口 listen 192.168.205.153
Port 只指定端口,监听所有IP listen 8080
listen 0.0.0.0:8080
default_server 默认地址,只能有一个server使用此关键字

Location配置
匹配规则(数字越小,优先级越高)

类型 含义 优先级 样式
=/路径 精确匹配 1 location = /image {}
^~ 优先匹配 2 location ^~ /page {}
~ 或 !~ 正则敏感或不敏感 3 location ~ .(jpe?g)$ {}
~*或 !~ 正则不敏感或敏感 3 location ~* .(jpe?g)$ {}
/ 通用匹配 4 location / {}
@ 内部重定向 location @name {}

location匹配规律

(1)、多个location匹配字符都能匹配成功的情况下,选择优先级最高的location规则去处理
(2)、多个locaiton匹配字符都能匹配成功,且他们的优先级一样的情况下,选择先定义的location规则去处理(优先上面的)

3.4 配置举例

新建/etc/nginx/conf.d/8080.conf并编辑如下:

server {
     
    listen 8080;
    server_name www.meiduo.site;

    location / {
     
        root /data/front_end_pc/;
        index index.html;
        try_files $uri $uri/ =404;
    }
}

新建/etc/nginx/conf.d/8081.conf并编辑如下:

server {
     
    listen 8081;
    server_name www.meiduo.site;

    location / {
     
        root /data/meiduo_mall_admin/;
        index index.html;
        try_files $uri $uri/ =404;
    }
}

你可能感兴趣的:(Linux,nginx,linux)