1. 更新系统

Bash

1sudo apt-get update && sudo apt-get upgrade # 对于基于Debian/Ubuntu的系统
2sudo yum update # 对于基于RHEL/CentOS的系统
3
4# 如果你使用的是较新的系统,可能需要使用dnf代替yum
5sudo dnf check-update && sudo dnf upgrade # 对于基于Fedora/CentOS Stream的系统

2. 安装Nginx

使用包管理器安装(推荐)

对于大多数Linux发行版,你可以通过包管理器轻松安装Nginx:

对于Debian / Ubuntu:

Bash

1sudo apt-get install nginx

对于RHEL / CentOS / Fedora / CentOS Stream:

Bash

1sudo yum install epel-release # 添加EPEL仓库(如果是RHEL/CentOS 7及以前版本)
2sudo dnf install nginx # 对于Fedora/CentOS Stream,或已经安装了EPEL的RHEL/CentOS 8+
或者从源码编译安装(如果你需要特定版本或额外模块)

Bash

1# 安装编译所需的依赖
2sudo yum install -y gcc gcc-c++ automake pcre pcre-devel zlib zlib-devel openssl-devel
3
4# 下载对应版本的Nginx源码
5wget http://nginx.org/download/nginx-1.23.0.tar.gz # 替换成你需要的版本号
6tar -zxvf nginx-1.23.0.tar.gz
7cd nginx-1.23.0
8
9# 配置、编译和安装
10./configure --prefix=/usr/local/nginx --with-http_ssl_module # 添加所需模块
11make
12sudo make install

3. 配置Nginx

Nginx的主配置文件位于 /etc/nginx/nginx.conf。打开它进行基础配置修改,例如设置工作进程数、监听端口等:

Bash

1sudo nano /etc/nginx/nginx.conf

例如,配置worker_processesevents模块:

Nginx

1worker_processes auto; # 根据CPU核心数自动设置工作进程数
2events {
3    worker_connections 1024; # 每个工作进程的最大并发连接数
4}
5
6http {
7    ...
8}

4. 配置Nginx虚拟主机

/etc/nginx/conf.d/目录下创建一个新的配置文件,例如default.conf

Bash

1sudo nano /etc/nginx/conf.d/default.conf

在新文件中编写虚拟主机配置,例如:

Nginx

1server {
2    listen 80; # 监听80端口
3    server_name yourdomain.com; # 替换为你的域名或IP地址
4
5    root /var/www/html; # 设置网站根目录
6    index index.html index.htm;
7
8    location / {
9        try_files $uri $uri/ =404;
10    }
11}

5. 开放端口号

确保系统的防火墙规则允许外部访问80端口(HTTP)或443端口(HTTPS)。对于iptables,你可以这样做:

Bash

1sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
2sudo service iptables save # 保存iptables规则(对于旧版系统)
3# 或者使用firewalld(对于较新系统)
4sudo firewall-cmd --permanent --add-service=http
5sudo firewall-cmd --reload

6. 启动Nginx服务并检查状态

启动Nginx服务:

Bash

1sudo systemctl start nginx # Debian/Ubuntu/Fedora/CentOS
2sudo service nginx start # 旧版CentOS/RHEL
3
4# 设置开机启动
5sudo systemctl enable nginx # 新版系统
6sudo chkconfig nginx on # 旧版系统
7
8# 检查Nginx服务状态
9sudo systemctl status nginx # 新版系统
10sudo service nginx status # 旧版系统

现在你应该可以在浏览器中通过服务器的IP地址或配置的域名访问到Nginx默认欢迎页。对于更复杂的配置,如SSL/TLS设置、反向代理、负载均衡等功能,请根据实际需求进一步配置相应的Nginx配置文件。