在真實的線上環(huán)境中濒析,一個網(wǎng)站需要域名和公網(wǎng)IP才可以訪問惫谤。在本地代碼調(diào)試的時候,可以利用系統(tǒng)提供的hosts文件來設(shè)置一個虛擬的域名康铭,并利用Nginx將域名解析到指定的IP地址和端口蹋宦。
1. 修改hosts文件披粟,實現(xiàn)域名的訪問。
以Windows開發(fā)環(huán)境為例冷冗,打開C:\Windows\System32\drivers\etc目錄下的hosts文件僻爽。添加127.0.0.1 jd.com
,完成IP地址(127.0.0.1)和域名(jd.com)映射的配置贾惦。如果修改后無法保存胸梆,請獲得管理員權(quán)限后重試。
如果是頻繁修改hosts文件须板,推薦使用一款快速切換host的工具SwitchHosts!碰镜。
這樣就可以把jd.com映射到本機(jī),在本地啟動服務(wù)的之后习瑰,則可以通過jd.com:{端口號}進(jìn)行訪問了绪颖。
2. 通過Nginx代理解決端口映射問題
注意到上述訪問時需要加端口號的,如果想去除端口號甜奄,實現(xiàn)更加優(yōu)雅的方式進(jìn)行訪問柠横,需要使用Nginx把所有請求轉(zhuǎn)移到默認(rèn)的80端口。這里用到Nginx的代理功能课兄,具體配置:
server {
listen 80;
server_name jd.com;
location / {
proxy_pass http://localhost:9999;
proxy_set_header Cookie $http_cookie;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
注意修改配置文件之后需要重啟Nginx才能生效牍氛,有時候會忘記。