macOS 上从源码安装 Nginx

在 macOS 上从源码安装 Nginx 并带上 --with-ipv6 参数进行编译,你可以按照以下步骤操作:

1. 安装依赖

首先,安装 Nginx 编译所需的依赖项。对于 macOS,你可能需要使用 Homebrew 来安装这些依赖项:

复制代码

bash复制代码

|---|----------------------------------|
| | brew install pcre zlib openssl |

2. 下载 Nginx 源码

访问 Nginx 官方网站下载 Nginx 的源码包,或者使用命令行工具如 curlwget 下载:

复制代码

bash复制代码

|---|--------------------------------------------------------------------------|
| | wget http://nginx.org/download/nginx-x.x.x.tar.gz # 请替换 x.x.x 为你想要的版本号 |

3. 解压源码包并进入目录

解压下载的源码包,并进入解压后的目录:

复制代码

bash复制代码

|---|-----------------------------------------------------|
| | tar -xzf nginx-x.x.x.tar.gz # 请替换 x.x.x 为你下载的版本号 |
| | cd nginx-x.x.x # 进入解压后的目录 |

4. 配置和编译

使用 ./configure 脚本配置 Nginx 的编译选项,并加上 --with-ipv6 参数来支持 IPv6:

复制代码

bash复制代码

|---|----------------------------------------------|
| | ./configure --prefix=/usr/local/nginx \ |
| | --sbin-path=/usr/local/nginx/nginx \ |
| | --conf-path=/usr/local/nginx/nginx.conf \ |
| | --pid-path=/usr/local/nginx/nginx.pid \ |
| | --with-http_ssl_module \ |
| | --with-ipv6 |

这里的 --prefix 参数指定了 Nginx 的安装目录,其他参数则分别指定了 Nginx 可执行文件、配置文件和 PID 文件的路径。--with-http_ssl_module 参数用于启用 SSL 支持,而 --with-ipv6 参数则用于启用 IPv6 支持。

5. 编译和安装

使用 make 命令编译源码,然后使用 sudo make install 命令安装 Nginx:

复制代码

bash复制代码

|---|---------------------|
| | make |
| | sudo make install |

6. 配置 Nginx

安装完成后,你需要配置 Nginx 以支持 IPv6。编辑 Nginx 的配置文件 /usr/local/nginx/nginx.conf,找到 server 块,并确保 listen 指令包含 IPv6 地址:

复制代码

nginx复制代码

|---|------------------------------------------|
| | server { |
| | listen [::]:80; # 监听所有 IPv6 地址的 80 端口 |
| | ... |
| | } |

7. 启动 Nginx

最后,你可以启动 Nginx 服务:

复制代码

bash复制代码

|---|--------------------------|
| | /usr/local/nginx/nginx |

8. 验证安装和配置

使用 curl 或其他工具来验证 Nginx 是否正在运行并正确配置了 IPv6 支持:

复制代码

bash复制代码

|---|---------------------|
| | curl -6 localhost |

如果一切正常,你应该能够看到 Nginx 的默认欢迎页面。

请注意,这些步骤可能会因为 Nginx 版本的不同而略有差异。务必参考你所使用的 Nginx 版本的官方文档以获取最准确的安装和配置指导。

相关推荐
那你能帮帮我吗6 小时前
nginx路径相关配置汇总
nginx
Evan芙7 小时前
nginx日志管理及日志格式定制
运维·nginx
HunterMichaelG7 小时前
【openSSH】Linux openEuler-20.03-x86-64服务器升级openSSH至10.2p1版本
tcp/ip·nginx
core5129 小时前
Nginx 实战:如何通过代理转发下载中文文件并保留原文件名
运维·nginx·代理·下载·转发
Energet!c11 小时前
Nginx access 日志通过 Filebeat 8.15.5 写入 Elasticsearch 8 实战指南
nginx·elasticsearch·filebeat·openresty
福大大架构师每日一题13 小时前
nginx 1.29.4 发布:支持 HTTP/2 后端与加密客户端问候(ECH),多项功能优化与修复
运维·nginx·http
爱宇阳13 小时前
宝塔面板 + Nginx + Spring Boot 零停机滚动发布完整教程
运维·spring boot·nginx
全栈工程师修炼指南13 小时前
Nginx | HTTP 反向代理:对上游服务端返回响应处理实践
运维·网络·nginx·安全·http
serve the people14 小时前
AI 模型识别 Nginx 流量中爬虫机器人的防御机制
人工智能·爬虫·nginx
Evan芙14 小时前
基于Nginx和Python的动态站点安装配置
数据库·python·nginx