奋斗
努力

OpenCloudOS上如何搭建Web站点并配置Nginx?

云计算

在 OpenCloudOS 上搭建 Web 站点并配置 Nginx,可以按照以下步骤操作。OpenCloudOS 兼容 CentOS/RHEL 生态,因此可使用 dnf/yum 包管理器安装 Nginx。


一、系统准备与更新

# 更新系统包(推荐)
sudo dnf update -y

# 确保防火墙已启用并允许 HTTP/HTTPS 端口(80/443)
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

# 若未安装 firewalld,可先安装:
# sudo dnf install -y firewalld
# sudo systemctl enable --now firewalld

💡 注意:部分云环境(如阿里云 ECS)可能使用安全组替代防火墙规则,请同步在控制台开放 80/443 端口。


二、安装 Nginx

# 安装 Nginx(OpenCloudOS 默认源包含稳定版 Nginx)
sudo dnf install -y nginx

# 启动并设置开机自启
sudo systemctl enable --now nginx

# 检查状态
systemctl status nginx

验证安装是否成功:

curl http://localhost
# 应返回 Nginx 默认欢迎页 HTML

三、创建网站目录与内容

假设要部署一个静态网站 /var/www/example.com:

# 创建站点根目录
sudo mkdir -p /var/www/example.com/html

# 创建测试页面
cat | sudo tee /var/www/example.com/html/index.html > /dev/null << 'EOF'
<!DOCTYPE html>
<html>
<head><title>Welcome to Example</title></head>
<body>
<h1>Hello from OpenCloudOS + Nginx!</h1>
<p>Web site is running successfully.</p>
</body>
</html>
EOF

# 设置权限(Nginx 通常以 `nginx` 用户运行)
sudo chown -R nginx:nginx /var/www/example.com
sudo chmod -R 755 /var/www/example.com

四、配置 Nginx 虚拟主机

方式一:修改默认配置(适合单站点快速部署)

编辑主配置文件(备份原文件):

sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
sudo vi /etc/nginx/nginx.conf

找到 server { listen 80; ... } 块,替换为:

server {
    listen 80;
    server_name example.com www.example.com _;  # 替换为你的域名或留 _ 匹配所有

    root /var/www/example.com/html;
    index index.html index.htm;

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

    # 可选:日志配置
    access_log /var/log/nginx/example.com.access.log;
    error_log /var/log/nginx/example.com.error.log;
}

方式二:使用网站点配置(推荐多站点场景)

创建新配置文件:

sudo vi /etc/nginx/conf.d/example.com.conf

内容同上(去掉 listen 80; 前的 server 块嵌套问题),保存后测试语法:

sudo nginx -t

若输出 syntax is ok 和 test is successful,则重载配置:

sudo systemctl reload nginx

五、验证访问

  • 本地测试:
    curl http://localhost
  • 外部访问(需确保 DNS 解析 + 安全组/防火墙放行):
    curl http://your-domain.com

六、进阶建议(可选)

需求 操作
启用 HTTPS 使用 Let’s Encrypt(certbot)自动申请证书;参考 Certbot 官方文档
PHP 支持 sudo dnf install -y php-fpm php-cli php-mysqlnd,配置 fastcgi_pass 到 PHP-FPM socket
反向X_X 在 location / 中使用 proxy_pass http://backend:port;
性能优化 调整 worker_processes, keepalive_timeout, gzip 压缩等参数

需要我提供:

  • ✅ HTTPS + Let’s Encrypt 完整配置示例?
  • ✅ Nginx + PHP-FPM 动态站点配置?
  • ✅ Docker 部署 Nginx 的方式?

欢迎告诉我你的具体场景,我可进一步定制方案。

未经允许不得转载:云服务器 » OpenCloudOS上如何搭建Web站点并配置Nginx?