期望結果:
訪問http://url.com
自動將網址跳到http://url.com:9000
,類似301 跳轉的那種,網址列也跟著變。
由於 url.com
這個網址是不存在的,所以本地寫了 host 指向 IP
在 nginx 裡寫瞭如下內容:
server {
listen 80;
server_name url.com;
location / {
proxy_pass http://url.com:9000;
}
}
但是測試 nginx 設定檔時提示:
$ sudo nginx -t
nginx: [emerg] host not found in upstream "seafile.sfdev.com" in /etc/nginx/sites-enabled/seafile.conf:5
nginx: configuration file /etc/nginx/nginx.conf test failed
我想大声告诉你2017-05-16 17:18:59
if ($host ~* url.com) {
rewrite ^/(.*)$ http://url.com:9000/ permanent;
}
或直接選用:
rewrite ^/(.*)$ http://url.com:9000/ permanent;
如果是直接跳轉,不需要添加location字段,直接:
server {
listen 80;
server_name url.com;
rewrite ^/(.*)$ http://url.com:9000/ permanent;
}
而你設定檔中的:proxy_pass是將請求轉送到代理伺服器的,詳情請看這裡:
http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_pass