作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
每隔一段时间就会有人试图通过公共(public) IP 而不是我们的域之一访问我们的网站(是的,我们有多个国家特定的域 .dk、.it、.es 等,但是我们也有 .com 作为一般”)。
现在我想将 IP 地址上的那些请求重定向到我们的 www.domain.com 域。我如何在 nginx 中做到这一点而不触及任何东西,但请求直接进入 IP?
这是我的 nginx.conf
upstream unicorn {
server unix:/tmp/unicorn.mysite.sock fail_timeout=0;
}
server {
listen 80 default deferred;
root /home/deployer/apps/mysite/current/public;
proxy_set_header X-Request-Start "t=${msec}";
if (-f $document_root/system/maintenance.html) {
return 503;
}
error_page 503 @maintenance;
location @maintenance {
rewrite ^(.*)$ /system/maintenance.html last;
break;
}
location ~ ^/assets/ {
gzip_static on;
expires max;
add_header Cache-Control public;
}
try_files $uri/index.html $uri @unicorn;
location @unicorn {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://unicorn;
}
error_page 500 502 503 504 /500.html;
client_max_body_size 4G;
keepalive_timeout 10;
}
所以问题是,我如何修改它以重定向,例如http://123.123.123.123/some_page
到 http://www.mysite.com/some_page
但保留所有其他如 http://www.mysite .dk/some_page
不变?
最佳答案
您可以使用以下指令设置一个 catchall 服务器:
listen 80 default_server;
server_name _;
如果您有多个服务器节,您可以使用 default_server
指定在主机名与任何其他 server_name
条目不匹配时使用的配置。使用 ip 号码适合这种情况。 server_name _;
行充当空 server_name
条目。
如果您的其中一台服务器有多个域名,它也很有用。
关于nginx - 如何将 IP 上的请求重定向到域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20703753/
我是一名优秀的程序员,十分优秀!