如何在数字海洋Ubuntu服务器上将非www重定向到www?
我托管在数字海洋Ubuntu服务器上。
我想将我的非www流量重定向到www。所有使用HTTPS。
这是我对/etc/nginx/sites-vailable/default所拥有的
server {
if ($host = www.test.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
if ($host = test.com) {
return 301 https://www.$host$request_uri;
} # managed by Certbot
listen 80 default_server;
listen [::]:80 default_server;
server_name test.com www.test.com;
return 404; # managed by Certbot
}
,但是它不起作用。有人可以帮忙吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您不应使用“如果”来收听请求。
用于设置服务器的NGINX手册: https://docs.nginx.com/nginx/admin-guide/web-server/web-server/web-server/
这是匹配您的设置的示例:
You should not use 'if' to listen for requests. https://www.nginx.com/resources/wiki/start/topics/depth/ifisevil/
The Nginx manual for setting up servers: https://docs.nginx.com/nginx/admin-guide/web-server/web-server/
Here's an example to match your setup: