day55 nginx和品牌管理

1、nginx 解決端口問題css

1、什麼是nginx?html

nginx 是一個高性能的web和反向代理服務器nginx

 

 

2Web服務器分2類:web

  • web應用服務器,如:
  • tomcat
  • resin
  • jetty
  • web服務器,如:
  • Apache 服務器
  • Nginx
  • IIS

區分:web服務器不能解析jsp等頁面,只能處理js、css、html等靜態資源。ajax

web應用服務器能夠處理動態資源,如servlet 併發:web服務器的併發能力遠高於web應用服務器。json

 

 

3nginx做爲反向代理跨域

代理:經過對客戶機的配置,讓一臺服務器代理客戶機,客戶的全部請求都交給代理服務器來處理瀏覽器

(例如:瀏覽器的代理)tomcat

反向代理:用一臺服務器來代理真實的服務器,用戶訪問時,不在訪問真實的服務器,而是訪問代理安全

服務器

 

總結:代理 是 代理客戶端

反向代理是代理服務器

 

nginx 反向代理的配置

 

 

模板:

server {

listen 80;

server_name manage.leyou.com;

 

proxy_set_header X-Forwarded-Host $host;

proxy_set_header X-Forwarded-Server $host;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

 

location / {

proxy_pass http://127.0.0.1:9001;

proxy_connect_timeout 600;

proxy_read_timeout 600;

}

}

 

 

4、跨域問題

4.1 什麼是跨域

域名不一樣

域名相同,端口不一樣

二級域名不一樣 item.jd.com (二級域名.一級域名.頂級域名)

 

若是域名和端口相同,可是請求的路徑不一樣,則不屬於跨域

 

 

4.2 爲何有跨域問題

跨域不必定會有跨域問題。

由於跨域問題是瀏覽器對於ajax請求的一種安全限制:一個頁面發起的ajax請求,只能是與當前頁域名相同的路徑,這能有效的阻止跨站攻擊。

 

所以:跨域問題是針對ajax的一種限制

 

 

4.3 跨域問題的解決辦法

1)jsonp :最先的解決辦法,利用script標籤能夠跨域的原理實現

限制:只能發起get請求

 

2)CORS:規範化的跨域請求解決方案,安全可靠

優點:在服務端能夠控制是否容許跨域,能夠自定義規則

支持各類請求方式

缺點:會產生額外的請求

 

五、CROS解決跨域問題

瀏覽器將ajax請求分爲兩類,其處理方案略有差別:簡單請求,特殊請求

 

簡單請求

當瀏覽器發起的ajax 請求是簡單請求時,會在請求頭中攜帶一個字段:Origin,

Origin中,會指出當前請求屬於哪一個域(協議+域名+端口)。

服務會根據這個值決定是否容許其跨域。

若是服務器容許跨域,須要在返回的響應頭中攜帶下面信息:

Access-Control-Allow-Origin: http://manage.leyou.com

Access-Control-Allow-Credentials: true

 

 

複雜請求

特殊請求會在正式通訊以前,增長一次HTTP查詢請求,稱爲"預檢"請求(preflight)。

瀏覽器先詢問服務器,當前網頁所在的域名是否在服務器的許可名單之中,以及可使用哪些HTTP動詞和頭信息字段。只有獲得確定答覆,瀏覽器纔會發出正式的XMLHttpRequest請求,不然就報錯。

相關文章
相關標籤/搜索