我试图在一个 droplet(digitalocean)下托管多个域名,也就是在一个 IP 地址下。我的主要域名是 mikolaj.dk,它可以正常工作。但是,我想添加 coingo.dk,所以我在 blockcoingo.dk www.coingo.dk
下添加了server_name
。但是,当我在 URL 中输入 coingo.dk 时,nginx 会显示 404 错误页面。当我在其前面加上 时www
,它可以正常工作。当我输入https://coingo.dk或者https://www.coingo.dk,它也能正常工作。但我不能指望访问者在网址前面输入 www 或 https。我做错了什么?我的服务器块如下:
server {
server_name coingo.dk www.coingo.dk;
root /var/www/coingo/public/;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
# pass the PHP scripts to FastCGI server listening on /var/run/php7.2-fpm.sock
location ~ \.php$ {
try_files $uri /index.php =404;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
答案1
我搞定了。之前存在的 letsencrypt 证书存在一些问题。现在可以使用了,谢谢