我有一个网站,客户端控制DNS,而我控制Web服务器。他们最近购买了个性网址,并希望其重定向到实际网站。
我正在nginx中尝试rewrite https://vanityurl.com$ / redirect;
,但是我被发送到“您的连接不是私有的”页面,我为实际站点设置了ssl。我是否还需要为虚荣做准备?
答案 0 :(得分:1)
重定向将导致最终用户的浏览器更改URL,并对“ location”标头中返回的内容提出新的请求。如果您想重定向到其他URL,可以这样:
server {
listen 80;
server_name vanityurl.com www. vanityurl.com;
return 301 https://example.com$request_uri;
}
其中example.com是您想要将人们发送到的新站点。但是就像我说的那样,它将更改URL。
如果您要“屏蔽”旧网址,则需要设置代理,除非您同时运行两个服务,在这种情况下,您可以创建一个新的NGINX server
块并处理对您的新域。 (建议您需要对SSL进行分类。这似乎是您现在面临的问题,服务器正在使用与请求主机名不匹配的SSL证书来提供其内容。)
对于到达端口443的请求,您还将需要一个相应的处理程序(如果要终止服务器上的SSL,而不是使用上游负载均衡器之类的东西)。
以下是NGINX中的重定向和重写之间的区别:http://think-devops.com/blogs/nginx-rewrite-redirect.html,更普遍的是: https://blogs.iis.net/owscott/url-rewrite-vs-redirect-what-s-the-difference