没长正的技术专栏 勤动手、多思考

Nginx安装与部署

2013-05-04

阅读:

2021-10-29 14:18:00 +0000

Nginx

Nginx (engine x) 是一个高性能的HTTP反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。

下载地址

1. 安装

1.1 win安装

  • 去到Nginx官网:http://nginx.org/ ,然后点击“download

  • windows 解压,并运行。

如果出现弹出框闪一下就消失,则通过命令行,跳转到nginx.exe 目录,执行nginx.exe 即可

  • 注意:

    windows下多次点击nginx.exe 可能会执行多个,修改nginx.conf会不生效 【20230506】

1.2 linux 安装

# 1. 安装依赖包
	yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

# 2. 下载并解压安装包

	# 创建一个文件夹
    cd /usr/local
    mkdir nginx
    cd nginx
	# 下载稳定版本 tar包
    wget http://nginx.org/download/nginx-1.22.1.tar.gz
    tar -xvf nginx-1.22.1.tar.gz
    
# 3. 安装nignx 
    # 进入nginx目录
    cd /usr/local/nginx
    # 进入目录
    cd nginx-1.22.1
    # 执行命令 考虑到后续安装ssl证书 添加两个模块
    ./configure --with-http_stub_status_module --with-http_ssl_module
    # 执行make命令
    make
    # 执行make install命令
    make install
    
 # 4. 设置nginx环境变量
     vim /etc/profile
     PATH=$PATH:/user/local/nginx/sbin
     export PATH
     
     # 保存文件,并使配置生效
     source /etc/profile;
     
  # 5. 启动服务
	 nginx -c /usr/local/nginx/conf/nginx.conf
	 
  # 6.  配置conf文件(可修改端口、改路由等等)
  	 vim /usr/local/nginx/conf/nginx.conf
  	 
  # 7. 重启并查看nginx 是否启动成功 
  	 nginx -s relaod
  	 ps -ef | grep nginx
  	 
  # 8. 外部主机访问端口,则需要开放指定端口(默认开放80端口)
	 firewall-cmd --zone=public --add-port=80/tcp --permanent
	 
	 # 查询㐰是否开启
	 firewall-cmd --query-port=80/tcp
	 # 保存防火墙配置(之后可通过外网IP访问)
	 firewall-cmd --reload
	 
	 # 其他: 关闭防火墙(危险)
	 systemctl top firewalld
	 # 查看端口列表	 
	 firewall-cmd --list-port
	 # 移除端口号
	 firewall-cmd --zone=public --remove-port=80/tcp --permanent

2. 配置

2.1 基本配置

#配置文件目录: conf目录下
linux: /etc/nginx/conf 目录
# 或者
/user/local/nginx/config 目录


2.2 常见命令

# nginx 常用命令
# 1. 判断文件是否有异常。
nginx -t 

# 2. 重启
nginx -s reload

# 3. 停止
nginx -s stop

# 4. 启动
nginx -s start

2.3 缓存

# 1. 启用缓存
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|js|css)$ {
    #设置缓存上面定义的后缀文件缓存到浏览器的生存时间
    expires   3d;
}

# 2. 禁用缓存
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|js|css)$ {
    #禁止缓存,每次都从服务器请求
    add_header Cache-Control no-store;
}

# 2.1 按时间处理
location / {
    #如果expires 和 add_header 同时开启的情况下,则add_header优于expires生效
    #Cache-Control比Expires可以控制的多一些, 而且Cache-Control会重写Expires的规则
    #设置禁止浏览器缓存,每次都从服务器请求
    add_header Cache-Control no-cache;
    add_header Cache-Control private;
    #设置缓存上面定义的后缀文件缓存到浏览器的生存时间
    expires -1s;
  }
  
  # 2.2 失效因素
  # http 请求头: 静态页面   https://my.oschina.net/foxidea/blog/99114

	Cache-Control:
	private,max-age=3600
	
  # 如果是动态的 需要设置 http 头 Last-Modified

	Cache-Control:
	private,max-age=3600
	
   # 可以控制 nginx 经过 3600 秒之后 重新请求源服务器生成缓存

# nginx 原理分析

参考

wins- 安装nginx

linux-安装nginx

nginx 缓存配置

ng缓存失效

NGINX缓存原理及源码分析


Similar Posts

欢迎拍砖,多多交流,转载请注明出处:[没长正的技术专栏](http://blog.meizhangzheng.com) 如涉及侵权问题,请发送邮件到xsj34567@163.com,如情况属实本人将会尽快删除。


下一篇 常用Shell命令

Comments