Centos7安装Nginx或OpenResty1
需积分: 0 140 浏览量
更新于2022-08-03
收藏 154KB PDF 举报
在本文中,我们将深入探讨如何在 CentOS7 系统上安装 Nginx 或 OpenResty。我们先关注 Nginx 的安装过程,因为 OpenResty 是基于 Nginx 的扩展,所以 Nginx 的安装是基础。
一、安装 Nginx 的依赖环境
在 CentOS7 上安装 Nginx 需要一些必要的编译工具和库。这些依赖包括:
1. `gcc-c++` 和 `gcc`:它们是 C++ 编译器,用于编译 Nginx。
2. `pcre` 和 `pcre-devel`:PCRE(Perl Compatible Regular Expressions)库,Nginx 的 HTTP 模块使用它来解析正则表达式。
3. `zlib` 和 `zlib-devel`:ZLIB 库,用于 HTTP 内容的压缩和解压缩。
4. `openssl` 和 `openssl-devel`:用于 SSL/TLS 支持,提供安全的 HTTPS 连接。
安装依赖的命令如下:
```bash
sudo yum install gcc-c++ gcc
sudo yum install pcre pcre-devel
sudo yum install zlib zlib-devel
sudo yum install openssl openssl-devel
```
二、下载与编译 Nginx
1. 访问 Nginx 的官方下载页面(https://nginx.org/en/download.html)选择合适的版本,然后使用 `wget` 下载源代码压缩包。
2. 解压缩下载的文件:
```bash
tar -xf nginx-1.18.xx.tar.gz
```
3. 进入解压后的目录,并配置编译选项:
```bash
cd nginx-1.18.xx
./configure --prefix=/usr/local/nginx \
--with-http_stub_status_module \
--with-http_ssl_module \
--with-http_gzip_static_module \
--with-stream \
--with-stream_ssl_module
```
4. 编译并安装 Nginx:
```bash
make && sudo make install
```
5. 使用 `whereis nginx` 查找 Nginx 程序的安装位置,通常位于 `/usr/local/nginx/sbin/` 目录下。
三、Nginx 的启动、重启与配置管理
1. 检查配置文件语法正确性:
```bash
./nginx -t
```
2. 启动 Nginx:
```bash
./nginx
```
3. 停止 Nginx(优雅地关闭,等待所有请求处理完毕):
```bash
./nginx -s quit
```
4. 强制停止 Nginx:
```bash
./nginx -s stop
```
5. 重新加载配置文件(不中断服务):
```bash
./nginx -s reload
```
四、设置 Nginx 开机启动
为了使 Nginx 在系统启动时自动运行,有两种方法:
1. 将 Nginx 启动命令添加到 `/etc/rc.local` 文件中,然后赋予该文件执行权限。
2. 创建一个名为 `nginx.service` 的系统服务文件,将其放置在 `/etc/systemd/system/` 目录下,然后使用 `systemctl` 命令管理 Nginx 服务。
例如,`nginx.service` 文件内容如下:
```ini
[Unit]
Description=nginx web server
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target
[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s TERM $MAINPID
[Install]
WantedBy=multi-user.target
```
创建服务文件后,执行以下命令:
```bash
sudo cp nginx.service /etc/systemd/system/nginx.service
sudo systemctl enable nginx
```
现在,Nginx 将在系统启动时自动启动,并可以通过 `systemctl start/restart/reload nginx` 命令进行管理。
总结,本文详细介绍了如何在 CentOS7 系统上安装 Nginx,包括安装依赖、编译安装、启动管理以及设置开机自启。理解并掌握这些步骤对于任何希望在 CentOS7 上部署 Nginx 的开发者都是至关重要的。对于 OpenResty 的安装,只需在 Nginx 的基础上额外安装 OpenResty 的扩展库,具体操作可参考 OpenResty 官方文档。
BellWang
- 粉丝: 28
- 资源: 315