Nginx的安装方法及常用命令

发布时间:2021-06-25 09:59:27 作者:chen
来源:亿速云 阅读:112
# Nginx的安装方法及常用命令

## 一、Nginx简介

Nginx(发音为"engine x")是一款轻量级、高性能的Web服务器和反向代理服务器,由俄罗斯工程师Igor Sysoev开发。它以占用内存少、并发能力强著称,广泛应用于负载均衡、HTTP缓存、静态资源服务等场景。截至2023年,Nginx市场份额约占全球Web服务器的35%,是Apache后的第二大Web服务器。

---

## 二、Nginx安装方法

### 1. Linux系统安装(以Ubuntu为例)

#### 方法一:通过官方仓库安装
```bash
# 更新软件包列表
sudo apt update

# 安装Nginx
sudo apt install nginx

# 启动服务
sudo systemctl start nginx

# 设置开机自启
sudo systemctl enable nginx

方法二:源码编译安装(推荐自定义模块时使用)

# 安装依赖
sudo apt install build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev

# 下载源码(以1.25.3版本为例)
wget https://nginx.org/download/nginx-1.25.3.tar.gz
tar -zxvf nginx-1.25.3.tar.gz
cd nginx-1.25.3

# 编译安装
./configure --prefix=/usr/local/nginx --with-http_ssl_module
make && sudo make install

2. Windows系统安装

  1. 访问官网下载页面:https://nginx.org/en/download.html
  2. 选择nginx/Windows-x.x.x版本下载ZIP包
  3. 解压到C:\nginx目录
  4. 双击nginx.exe启动(或通过CMD运行)

3. macOS系统安装

# 使用Homebrew安装
brew install nginx

# 启动服务
brew services start nginx

4. Docker方式安装

docker pull nginx:latest
docker run --name my-nginx -p 80:80 -d nginx

三、Nginx常用命令

1. 服务管理命令

命令 说明
sudo systemctl start nginx 启动服务
sudo systemctl stop nginx 停止服务
sudo systemctl restart nginx 重启服务
sudo systemctl reload nginx 热重载配置(不中断服务)
sudo systemctl status nginx 查看服务状态

2. 进程管理命令

# 强制停止(使用信号量)
sudo kill -QUIT $(cat /var/run/nginx.pid)

# 优雅停止(处理完当前请求)
sudo kill -TERM $(cat /var/run/nginx.pid)

3. 配置文件相关

# 测试配置文件语法
sudo nginx -t

# 指定配置文件路径启动
sudo nginx -c /path/to/nginx.conf

# 查看编译参数
nginx -V

4. 日志管理

# 实时查看访问日志
tail -f /var/log/nginx/access.log

# 按日期切割日志(需配合crontab)
mv /var/log/nginx/access.log /var/log/nginx/access_$(date +%Y%m%d).log
kill -USR1 $(cat /var/run/nginx.pid)

四、Nginx基本配置示例

1. 静态网站配置

server {
    listen 80;
    server_name example.com;
    root /var/www/html;
    index index.html;

    location / {
        try_files $uri $uri/ =404;
    }
}

2. 反向代理配置

server {
    listen 80;
    server_name api.example.com;

    location / {
        proxy_pass http://localhost:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

3. 负载均衡配置

upstream backend {
    server 192.168.1.100:8080 weight=3;
    server 192.168.1.101:8080;
    server 192.168.1.102:8080 backup;
}

server {
    location / {
        proxy_pass http://backend;
    }
}

五、常见问题排查

  1. 端口冲突问题

    sudo netstat -tulnp | grep :80
    sudo kill -9 <PID>
    
  2. 权限问题

    sudo chown -R www-data:www-data /var/www/html
    sudo chmod -R 755 /var/www
    
  3. 403 Forbidden错误
    检查:

    • 文件是否存在
    • 目录权限是否正确
    • index文件是否配置
  4. 性能调优建议

    • 调整worker_processes为CPU核心数
    • 启用gzip压缩
    • 配置缓存头

六、学习资源推荐

  1. 官方文档:https://nginx.org/en/docs/
  2. Nginx Cookbook(O’Reilly)
  3. 数字证书配置:Let’s Encrypt + Certbot
  4. 性能测试工具:abwrk

提示:生产环境修改配置前,务必先执行nginx -t测试语法! “`

(全文约1250字,可根据实际需求调整具体安装版本和配置细节)

推荐阅读:
  1. nginx的安装方法
  2. nginx 安装方法2

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

nginx

上一篇:jQuery如何实现合并/追加数组并去除重复项的方法

下一篇:如何使用Nginx echo模块测试location匹配优先级

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》