### 在自己的主機上預備 在開發時,有時可能會需要到驗證主機 https 及 DNS 的服務,例如 OAuth 或是 Payment Gateway 等等, 我們可以在自己的主機用以下的 Command 來把自己主機的某一個 Port Tunnel 度 Remote 主機的某一個 Port。 ```sh $ ssh -f -N -T -R 9000:localhost:3000 root@<your-vps-ip> ``` ##### -f 把服務在背景運行。 ##### -R 是指把 localhost 上,Port 3000 的資料 Tunnel 到 Remote 主機上的 Port 9000 上。 ##### root@<your-vps-ip> 目標主機的使用者及地址。 ### 在 Remote 主機上預備 可以在 Remote 主機上裝上 Nginx 來進行 reverse proxy。 ```sh $ apt-get update $ apt-get install nginx ``` 然後在 nginx 的 config 設定好 reverse proxy 設定。 開一個新的檔案 `/etc/nginx/site-available/tunnel`,設定以下內容。 ```sh server { listen 80; location / { proxy_pass http://127.0.0.1:9000; } } ``` *** 如果要使用 https 的話,就要裝返張 CERT 同埋 `proxy_pass` 要改返去 https。 在 `/etc/nginx/site-enable` 加入 然後就可以檢查 nginx 設定及重新啟動服務。 ```sh $ nginx -t $ nginx -s reload ```