前端域名訪問頁面中的一些配置項
我們一般使用webpack打包和重啟服務器,那么一般情況下,我們需要使用 127.0.0.1:端口號 去訪問頁面,但是我們有時候需要使用域名去訪問的話,
比如想要使用 xd.xxx.com去訪問,那么我們可以在mac自帶的apache2下使用反向代理即可解決。如下解決方案:
在mac系統下會自帶apache2,因此命令進入 cd /etc/apache2 然后運行命令:sudo open ./httpd.conf -a 'sublime text' 使用Sublime 來編輯一下;
配置如下:
<VirtualHost *:80> ServerName xd.xxxx.com ProxyRequests off Header set Access-Control-Allow-Origin * <Proxy *> Order deny,allow Allow from all </Proxy> <Location /bus> ProxyPass http://localhost:8899/ ProxyPassReverse http://localhost:8899/ </Location> </VirtualHost>
當瀏覽器域名訪問xd.xxx.com/bus的時候(當然資源文件需要放到bus目錄下),會反向代理到 本地的 http://localhost:8899/下,當然本地要啟動對應的服務器。端口號是8899;
host 需要綁定 如下;
127.0.0.1 xd.xxxx.com
然后進入 sbin目錄下 啟動服務 sudo apachectl start
重啟命令如下 sudo apachectl restart
停止服務:sudo /usr/sbin/apachectl stop
開啟服務:sudo /usr/sbin/apachectl start
重啟服務:sudo /usr/sbin/apachectl restart
2. 服務器端接口也可以反向代理:
如下配置:
server { listen 443; listen 80; server_name xy.xxx.com; // 接口的域名 access_log /data/www/logs/nginx/access.log main; add_header Access-Control-Allow-Origin http://xd.xxx.com; // 允許的域名跨域 add_header Access-Control-Allow-Credentials true; include nginx_xxx.conf; location / { proxy_pass http://192.168.1.212:8136; include nginx_proxy.conf; } error_page 500 502 503 504 /502.html; location = /50x.html { root html; } }
如上 xy.xxx.com 是代碼中接口的域名,因此我們也可以使用 http://192.168.1.212:8136 域名去反向代理,也就是說開發的接口是放在212服務器上的
,但是我們在本地聯調的時候,我們使用 xy.xxx.com 域名,會反向代理到 開發環境中的212服務器上的,http://192.168.1.212:8136;
3. 前端資源反向代理到測試環境中,比如服務器212環境。
server { listen 443; listen 80; server_name xd.xxx.com; // 頁面訪問的域名 access_log /data/www/logs/nginx/access.log main; add_header Access-Control-Allow-Origin *; include nginx_xxx.conf; location / { root html/xd_resources; // 前端資源存放的路徑 index index.html; include nginx_proxy.conf; } location ~* \.(eot|ttf|woff)$ { root html/xd_resources; add_header Access-Control-Allow-Origin *; } error_page 500 502 503 504 /502.html; location = /50x.html { root html; } }
注意:如上第2點和第3點是放在比如測試環境212服務器上這樣配置的,那么host需要綁定:
開發接口綁定: 192.168.1.212 xy.xxx.com
前端資源的綁定 192.168.1.212 xd.xxx.com