编译安装Nginx服务
关闭防火墙,上传安装包
systemctl stop firewalld
setenforce 0
安装依赖包(yum install没有成功的话就搭建本地yum仓库在安装)
yum -y install \
pcre-devel \ #perl的接口开发包
zlib-devel \ #提供相应的库和头文件
gcc \ #c语言编译器
gcc-c++ \ #c++编译器
make #编译
创建组账户
Nginx 服务程序默认以 nobody 身份运行,建议为其创建专门的用户账号,以便更准确地控制其访问权限(不创建在生产环境中是非法的)
useradd -M -s /sbin/nologin nginx
编译安装Nginx
tar zxvf nginx-1.12.2.tar.gz -C /opt/
cd /opt/nginx-1.12.2
./configure \
--prefix=/usr/local/nginx \ #指定nginx的安装路径
--user=nginx \ #指定用户名
--group=nginx \ #指定组名
--with-http_stub_status_module #启用 http_stub_status_module 模块以支持状态统计 操作
make && make install #编译
做软连接
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ #让系统识别nginx的操作命令
检查、启动nginx服务
nginx -t #检查配置文件是否配置正确
nginx #启动
升级nginx版本
解压
tar xf nginx-1.22.1.tar.gz
编译安装
cd nginx-1.22.1 #切换目录
./configure #安装模块
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module \
--with-http_ssl_module \
查看usr/local下有一个nginx文件
ls /usr/local
编译一下,这个时候不要用 make install这个命令
make
编译结束后看一下objs下有没有nginx文件
cd objs/
ls
将旧的nginx 移动并改名
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx-old
将新的nginx拷贝到/usr/local/nginx/sbin/ 并取名为nginx
cp nginx /usr/local/nginx/sbin/nginx
查看版本,升级成功
Nginx -V
安装ssl
cd /usr/local/nginx/conf/
openssl genrsa -des3 -out tmp.key 2048 #生成私钥文件(tmp.key),会让你设置私钥文件的密码
openssl rsa -in tmp.key -out ssl.key && rm -f tmp.key # 转换私钥文件(ssl.key),把密码取消掉,否则客户端用https访问时需要输入密码
openssl req -new -key ssl.key -out ssl.csr #生成一个证书请求文件(ssl.csr),需要用到这个请求文件与私钥文件结合来生成公钥文件,会让你填一些信息,可以随便填
openssl x509 -req -days 365 -in ssl.csr -signkey ssl.key -out ssl.crt && rm -f ssl.csr
cd /usr/local/nginx/conf
cp nginx.conf nginx_lzaf.conf
编辑文件并新增server节点
vim nginx.conf
# HTTPS server
#
server {
server_name localhost;
listen 443 ssl; #一定要有ssl,不然会报错
# ssl on; #务必要注释掉,不然会报错
ssl_certificate /usr/local/nginx/conf/ssl.crt; #公钥文件
ssl_certificate_key /usr/local/nginx/conf/ssl.key; #私钥文件
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #指定SSL协议版本
ssl_prefer_server_ciphers on;
}
网页打开IP地址:http://192.168.192.130/,成功了