Linux系统如何安装nginx

发布时间:2022-01-24 10:50:16 作者:小新
来源:亿速云 阅读:166
# Linux系统如何安装nginx

Nginx是一款高性能的HTTP和反向代理服务器,广泛应用于Web服务、负载均衡和缓存等场景。本文将详细介绍在Linux系统上安装Nginx的多种方法,包括通过包管理器安装、源码编译安装以及使用Docker容器化部署。

---

## 一、准备工作

在开始安装前,请确保:
1. 已拥有**root权限**或**sudo权限**的账户
2. 系统已配置正确的软件源(apt/yum/dnf等)
3. 建议系统版本:
   - Ubuntu 18.04+/Debian 10+
   - CentOS 7+/RHEL 8+
   - 其他主流Linux发行版

---

## 二、通过包管理器安装(推荐)

### 1. Ubuntu/Debian系统
```bash
# 更新软件包索引
sudo apt update

# 安装Nginx
sudo apt install nginx -y

# 启动服务并设置开机自启
sudo systemctl start nginx
sudo systemctl enable nginx

# 验证安装(应显示版本信息)
nginx -v

2. CentOS/RHEL系统

# 添加EPEL仓库(CentOS 7/RHEL 7)
sudo yum install epel-release -y

# 安装Nginx
sudo yum install nginx -y  # CentOS 7
sudo dnf install nginx -y  # CentOS 8+/RHEL 8+

# 启动服务
sudo systemctl start nginx
sudo systemctl enable nginx

3. 验证安装

访问服务器IP地址:

curl http://localhost

或浏览器访问 http://<服务器IP>,应看到Nginx欢迎页面。


三、源码编译安装(高级用户)

1. 下载源码包

wget http://nginx.org/download/nginx-1.25.3.tar.gz
tar -zxvf nginx-1.25.3.tar.gz
cd nginx-1.25.3

2. 安装依赖

# Ubuntu/Debian
sudo apt install build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev

# CentOS/RHEL
sudo yum install gcc make pcre-devel zlib-devel openssl-devel

3. 编译配置

./configure --prefix=/usr/local/nginx \
            --with-http_ssl_module \
            --with-http_v2_module

4. 编译安装

make && sudo make install

5. 创建系统服务

新建服务文件 /etc/systemd/system/nginx.service

[Unit]
Description=The NGINX HTTP and reverse proxy server
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PIDFile=/usr/local/nginx/logs/nginx.pid

[Install]
WantedBy=multi-user.target

启动服务:

sudo systemctl daemon-reload
sudo systemctl start nginx

四、Docker方式安装

1. 安装Docker

curl -fsSL https://get.docker.com | sudo sh

2. 拉取Nginx镜像

sudo docker pull nginx:latest

3. 运行容器

sudo docker run --name mynginx -p 80:80 -d nginx

4. 验证容器

curl http://localhost

五、基本配置与管理

1. 关键目录说明

路径 说明
/etc/nginx/nginx.conf 主配置文件
/etc/nginx/conf.d/ 附加配置文件目录
/var/log/nginx/ 日志目录

2. 常用命令

# 检查配置语法
sudo nginx -t

# 重新加载配置
sudo systemctl reload nginx

# 查看状态
sudo systemctl status nginx

3. 配置虚拟主机示例

/etc/nginx/conf.d/example.conf中添加:

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

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

六、安全加固建议

  1. 防火墙配置

    sudo ufw allow 'Nginx Full'  # Ubuntu
    sudo firewall-cmd --permanent --add-service=http  # CentOS
    
  2. 禁用服务器令牌: 在nginx.conf中添加:

    server_tokens off;
    
  3. 使用HTTPS: 推荐使用Let’s Encrypt免费证书:

    sudo apt install certbot python3-certbot-nginx
    sudo certbot --nginx
    

七、故障排查

  1. 端口冲突

    sudo netstat -tulnp | grep 80
    
  2. 查看错误日志

    tail -f /var/log/nginx/error.log
    
  3. 测试配置文件

    sudo nginx -t
    

结语

本文涵盖了Nginx在Linux系统中的主流安装方式,用户可根据实际需求选择合适的方法。对于生产环境,建议: - 使用包管理器安装以方便维护 - 定期更新版本修复安全漏洞 - 参考官方文档进行性能调优

官方文档:https://nginx.org/en/docs/ “`

注:实际使用时请根据具体Linux发行版和Nginx版本调整命令参数。

推荐阅读:
  1. 安装nginx
  2. nginx简介及nginx安装

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

linux nginx

上一篇:如何在CentOS 7上安装Redis服务器

下一篇:如何在Linux中创建和管理归档文件

相关阅读

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

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