如何仅使用 Rackspace 服务器 IP 地址来提供 Nginx 服务?

如何仅使用 Rackspace 服务器 IP 地址来提供 Nginx 服务?

我正在 Rackspace 上设置一个服务器,用于迁移现有网站,以便在更改 DNS 条目之前使一切正常运行。

使用默认设置,我让服务器在 IP 地址上工作没有遇到任何问题。然后,我复制了原始的 sites-available 文件,在 sites-enabled 中对其进行了符号链接,并将原始文件复制index.html到新文件夹中。我将 sites-available 根目录设置为新文件夹,然后在文件夹和文件上执行了chown -R www-data:www-datachmod 775之后chmod 664,我重新启动了 Nginx。

当我打开该网站的 IP 地址时,出现 404 Not Found 错误。

可用站点如下:

server {
    listen [::]:80 default_server;
    root /var/www/example.com/public/;
    index index.html index.htm;        
    server_name localhost;
    location / {
            try_files $uri $uri/ =404;
       }
}

答案1

Linux 总是令人感到谦卑。nginx 邮件列表中的某个人善意地指出我应该检查 的权限/var/www/,结果我在chmod上输入了错误的代码/var/www/。现在一切都正常了。继续迁移...

答案2

我立即看到的问题是根选项上有一个尾随斜线。

改变/var/www/example.com/public/

改成:/var/www/example.com/public

此外,如果上述操作没有成功,请尝试下面的代码,这将摆脱 localhost 元素并硬设置您想要使用的域。

server {
    listen       80;
    server_name  your-domain.com www.yourdomain.com;
    root /var/www/example.com/public;
    index index.html index.htm;        
    location / { }
    error_page   404      /404x.html;
}

相关内容