下载安装
nginx版本
Nginx分为开源的 Nginx Open Source版、付费的 Nginx Plus版。
Nginx官网 提供的 Nginx Open Source有三种版本:
- Mainline version:目前主力正在做的版本(即开发版)
- Stable version:最新稳定版(生产环境上建议使用的版本)
- Legacy version:遗留的老版本的稳定版
此处下载stable版本的nginx.
安装依赖
还需要安装相关依赖:pcre、openssl、zlib、gcc等
yum install -y make zlib zlib-devel pcre-devel openssl openssl-devel
yum install -y gcc-c++ libtool
安装后验证:
# 验证pcre是否安装成功
pcre-config --version
安装nginx
将nginx安装包上传服务器并解压:
tar -zxvf nginx-1.20.0.tar.gz
进入解压目录,进行检查并创建makefile、objs:
# 如果想要支持代理https,则需要添加参数
# ./configure --prefix=/usr/local/nginx --with-http_ssl_module
./configure
进行make:
# 需要sudo权限,否则/usr/local/nginx文件夹无法创建
sudo make && sudo make install
如果使用
make && make install
因为权限报错:
执行make clean
进行清理;
然后执行./configure
重新生成makefile;
然后再次尝试sudo make && sudo make install
安装成功后,会在 /usr/local
下生成nginx
文件夹,nginx
文件夹下的sbin
文件夹中存放有启动脚本。
将nginx修改为非root用户
nginx安装到了/usr/local/nginx
,该文件夹默认属于root用户:
# 将nginx文件夹所属用户改为自己创建的用户
chown -hR nginx:nginx /usr/local/nginx
修改/usr/local/nginx/conf/nginx.conf
文件中的端口号:
nginx默认的端口号是80。在Linux系统中,1024以下的端口绑定都需要root权限
# .......
http {
include mime.types;
default_type application/octet-stream;
# ..........
server {
listen 8888; # 此处修改为1024以上的端口
server_name localhost;
# ........
}
}
加入环境变量
nginx安装完成后,默认只有进入 /usr/local/nginx/sbin
文件夹中才能运行nginx脚本命令,可以将该文件夹加入PATH环境变量中:
export NGX_HOME=/usr/local/nginx
export PATH=$PATH:$NGX_HOME/sbin
Nginx操作
启动nginx
进入/usr/local/nginx/sbin
目录,启动nginx(如果没有修改nginx文件夹权限,默认需要有root权限的用户才能执行):
./nginx
执行之后, 使用ps -ef| grep nginx
查看进程,会出现两个nginx进程:
- nginx: master process ./nginx
- nginx: worker process
nginx默认的server端口为80,启动后可以直接使用浏览器访问nginx服务器:http://192.168.29.143
linux防火墙设置,将80端口开放:
# 查看开放的端口号
firewall-cmd --list-all
# 设置开放的端口
firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-port=80/tcp --permanent
# 重启防火墙
firewall-cmd --reload
常用命令
nginx常用命令:
# 查看版本号
./nginx -v
# 启动nginx
./nginx
# 停止nginx
./nginx -s stop
# 重新加载nginx.conf (修改配置不需要停机,热部署)
./nginx -s reload
# 使用指定的配置文件启动
./nginx -c 配置文件路径/nginx.conf