1、安装gcc
安装GCC 编译软件
yum install gcc
2、pcre、pcre-devel安装
pcre是一个perl库,包括perl兼容的正则表达式库,nginx的http模块使用pcre来解析正则表达式,所以需要安装pcre库
yum install -y pcre pcre-devel
3、zlib安装
zlib库提供了很多种压缩和解压缩方式nginx使用zlib对http包的内容进行gzip,所以需要安装
安装命令:
yum install -y zlib zlib-devel
4、安装openssl
openssl是web安全通信的基石,没有openssl,可以说我们的信息都是在裸奔。。。。。。
安装命令:
yum install -y openssl openssl-devel
5、安装jemalloc
# 创建编译文件夹,复制文件 jemalloc-5.2.1.tar.bz2 到 /usr/local/src
cd /usr/local/src
# 直接复制,不要下载了,或者 wget +地址下载
# 安装bzip2,避免下一步解压异常
yum -y install bzip2
tar jxvf jemalloc-5.2.1.tar.bz2
# 进入文件夹
cd jemalloc-5.2.1
./configure --prefix=/usr/local/jemalloc
make && make install
6、安装Tengine
从官网(http://tengine.taobao.org/)获取最新版的软件
# 通过创建新用户来安装tengine
groupadd www-data
useradd -s /sbin/nologin -g www-data www-data
cd /usr/local/src
# 安装下载插件
yum -y install wget
# 下载最新版 http://tengine.taobao.org/download/tengine-2.3.3.tar.gz
wget http://tengine.taobao.org/download/tengine-2.3.3.tar.gz
# 解压文件
tar -zxvf tengine-2.3.3.tar.gz
cd tengine-2.3.3
./configure --prefix=/usr/local/nginx --user=www-data --group=www-data --with-pcre --with-http_ssl_module --with-jemalloc=/usr/local/src/jemalloc-5.2.1 --with-http_gzip_static_module --with-http_realip_module --with-http_stub_status_module
make && make install
7、配置tengine
# 配置开机启动
vim /lib/systemd/system/nginx.service
#在创建的文件中保存以下内容
[Unit]
Description=The nginx HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
# 进入文件夹
cd /lib/systemd/system
chmod 745 nginx.service
# 其它命令
# 启动nginx服务
systemctl start nginx.service
# 设置开机自启动
systemctl enable nginx.service
# 停止开机自启动
systemctl disable nginx.service
# 查看服务当前状态
systemctl status nginx.service
# 重新启动服务
systemctl restart nginx.service
# 查看所有已启动的服务
systemctl list-units --type=service
8、开启服务器端口号
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=443/tcp --permanent
systemctl restart firewalld.service
firewall-cmd --list-ports