197 lines
4.5 KiB
Markdown
197 lines
4.5 KiB
Markdown
|
|
1、下载安装包:`https://tengine.taobao.org/`
|
|||
|
|
|
|||
|
|
2、上传,安装位置在:`/data/tengine`
|
|||
|
|
|
|||
|
|
3、解压缩:`tar -zxvf tengine-3.1.0.tar.gz`
|
|||
|
|
|
|||
|
|
4、安装编译环境:`yum -y install gcc-c++`
|
|||
|
|
|
|||
|
|
5、安装依赖:`yum -y install pcre-devel zlib zlib-devel openssl openssl-devel`
|
|||
|
|
|
|||
|
|
6、创建安装目录:`mkdir /data/tengine`
|
|||
|
|
|
|||
|
|
7、进入解压好的文件夹:`cd tengine-3.1.0`
|
|||
|
|
|
|||
|
|
8、执行并指定安装路径:`./configure --prefix=/data/tengine` 、`make`、`make install`
|
|||
|
|
|
|||
|
|
```编译
|
|||
|
|
./configure --prefix=/data/tengine \
|
|||
|
|
--conf-path=/data/tengine/conf/nginx.conf \
|
|||
|
|
--error-log-path=/data/tengine/logs/error.log \
|
|||
|
|
--http-log-path=/data/tengine/logs/access.log \
|
|||
|
|
--pid-path=/data/tengine/logs/nginx.pid \
|
|||
|
|
--lock-path=/data/tengine/logs/nginx.lock \
|
|||
|
|
--with-http_ssl_module \
|
|||
|
|
--with-http_gzip_static_module \
|
|||
|
|
--with-pcre \
|
|||
|
|
--with-http_stub_status_module
|
|||
|
|
#解释:
|
|||
|
|
--prefix=/data/tengine → 指定安装到 /data/tengine/
|
|||
|
|
--conf-path=/data/tengine/conf/nginx.conf → 指定 nginx.conf 配置文件位置
|
|||
|
|
--error-log-path=/data/tengine/logs/error.log → 错误日志存放目录
|
|||
|
|
--http-log-path=/data/tengine/logs/access.log → 访问日志存放目录
|
|||
|
|
--pid-path=/data/tengine/logs/nginx.pid → 指定 nginx 进程 ID 存放路径
|
|||
|
|
--lock-path=/data/tengine/logs/nginx.lock → 进程锁文件路径
|
|||
|
|
--with-http_ssl_module → 开启 HTTPS 支持
|
|||
|
|
--with-http_gzip_static_module → 开启 Gzip 压缩
|
|||
|
|
--with-pcre → 支持 正则表达式(用于 Rewrite)
|
|||
|
|
--with-http_stub_status_module → 启用 Nginx 状态监控
|
|||
|
|
|
|||
|
|
#安装
|
|||
|
|
make -j$(nproc)
|
|||
|
|
make install
|
|||
|
|
|
|||
|
|
#=============加上四层代理==============
|
|||
|
|
./configure --prefix=/data/tengine \
|
|||
|
|
--conf-path=/data/tengine/conf/nginx.conf \
|
|||
|
|
--error-log-path=/data/tengine/logs/error.log \
|
|||
|
|
--http-log-path=/data/tengine/logs/access.log \
|
|||
|
|
--pid-path=/data/tengine/logs/nginx.pid \
|
|||
|
|
--lock-path=/data/tengine/logs/nginx.lock \
|
|||
|
|
--with-http_ssl_module \
|
|||
|
|
--with-http_gzip_static_module \
|
|||
|
|
--with-pcre \
|
|||
|
|
--with-http_stub_status_module \
|
|||
|
|
--with-stream
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
9、查看目录是否安装成功:`ls /data/tengine`
|
|||
|
|
|
|||
|
|
10、启动tengine:`cd /data/tengine/sbin`、`./nginx`
|
|||
|
|
|
|||
|
|
11、添加后续目录
|
|||
|
|
|
|||
|
|
mkdir -p /data/tengine/conf/vhosts
|
|||
|
|
mkdir -p /data/tengine/conf/certificate
|
|||
|
|
|
|||
|
|
`/data/tengine/conf/nginx.conf` 的 `http {}` 块cc的内添加,引用虚拟主机
|
|||
|
|
|
|||
|
|
http {
|
|||
|
|
include mime.types;
|
|||
|
|
default_type application/octet-stream;
|
|||
|
|
|
|||
|
|
# 引入虚拟主机配置
|
|||
|
|
include /data/tengine/conf/vhosts/*.conf;
|
|||
|
|
|
|||
|
|
# 其他配置...
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
/data/tengine/sbin/nginx
|
|||
|
|
|
|||
|
|
/data/tengine/sbin/nginx -s reload
|
|||
|
|
|
|||
|
|
1、启动命令 2、重新加载配置文件命令
|
|||
|
|
|
|||
|
|
|
|||
|
|
全局使用nginx
|
|||
|
|
|
|||
|
|
方式一
|
|||
|
|
|
|||
|
|
1. 执行以下命令创建软链接:
|
|||
|
|
bash
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
ln -s /data/tengine/sbin/nginx /usr/local/bin/nginx
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
(`/usr/local/bin` 通常已在系统环境变量 `$PATH` 中,优先选择此目录)
|
|||
|
|
2. 验证是否生效:
|
|||
|
|
bash
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
nginx -v #
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
|
|||
|
|
方式二
|
|||
|
|
|
|||
|
|
1. 编辑环境变量配置文件(以 `bash` 为例):
|
|||
|
|
bash
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
vi /etc/profile # 全局生效(所有用户),或编辑 ~/.bashrc(当前用户)
|
|||
|
|
```
|
|||
|
|
2. 在文件末尾添加一行,将 Nginx 所在目录加入 `PATH`:
|
|||
|
|
bash
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
export PATH=$PATH:/data/tengine/sbin
|
|||
|
|
```
|
|||
|
|
3. 使配置立即生效:
|
|||
|
|
bash
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
source /etc/profile # 对应全局配置文件,或 source ~/.bashrc
|
|||
|
|
```
|
|||
|
|
4. 验证:
|
|||
|
|
bash
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
nginx -v # 直接执行命令测试
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
配置nginx systemctl
|
|||
|
|
|
|||
|
|
```gitlab
|
|||
|
|
vim /etc/systemd/system/tengine.service
|
|||
|
|
[Unit]
|
|||
|
|
Description=Tengine Web Server
|
|||
|
|
After=network.target
|
|||
|
|
|
|||
|
|
[Service]
|
|||
|
|
Type=forking
|
|||
|
|
PIDFile=/data/tengine/logs/nginx.pid
|
|||
|
|
ExecStart=/data/tengine/sbin/nginx
|
|||
|
|
ExecReload=/data/tengine/sbin/nginx -s reload
|
|||
|
|
ExecStop=/data/tengine/sbin/nginx -s stop
|
|||
|
|
|
|||
|
|
# 防止被 killall/nginx 杀掉
|
|||
|
|
KillMode=process
|
|||
|
|
|
|||
|
|
# 自动重启(如果你希望 Nginx 意外退出后自动拉起)
|
|||
|
|
Restart=on-failure
|
|||
|
|
RestartSec=2s
|
|||
|
|
|
|||
|
|
[Install]
|
|||
|
|
WantedBy=multi-user.target
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
```gitlab
|
|||
|
|
检查配置 使用 nginx -t
|
|||
|
|
热加载 使用 systemctl reload tengine
|
|||
|
|
启动服务 使用 systemctl start tengine
|
|||
|
|
停止服务 使用 systemctl stop tengine
|
|||
|
|
重启服务 使用 systemctl restart tengine
|
|||
|
|
紧急操作 使用 nginx -s reload/stop
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
容器的:
|
|||
|
|
|
|||
|
|
docker exec -it my-nginx nginx -t # 检查配置文件语法
|
|||
|
|
docker exec -it my-nginx nginx -s reload # 重载配置
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|