nginx 的設置默認路徑和代理

爲了應對跨域代理,使用nginx做代理,以解決跨域,一下是設置方法;

  1. windows系統去nginx官網下載響應的nginx安裝包,mac是用brew install nginx進行安裝
    注:windows是下載下圖紅框一列(選擇你需要的版本號),注意不要下錯了
    在這裏插入圖片描述

  2. 安裝啓動
    windows只需要解壓壓縮包即可,解壓後的文件夾就是nginx程序,該文件不可以放到含有中文名稱路徑中,否則無法正常啓動;雙擊nginx.exe即可啓動;
    在這裏插入圖片描述
    mac使用brew安裝成功即可,程序路徑在/usr/local/etc/nginx下;運用 nginx 命令行即可啓動;

  3. 關閉nginx,使用命令行 nginx -s stop 即可,windows需要cd到nginx到根目錄下或者配置nginx到環境變量(同樣也可以用命令行啓動)

  4. 修改文件默認路徑:
    a. 默認根路徑,mac的默認路徑爲 /usr/local/etc/nginx,windows 的默認路徑則爲你的nginx根目錄的html文件夾,你可以不修改默認路徑,直接將文件發到默認的文件根路徑中就可以通過nginx進行訪問了
    b. 修改默認路徑,打開 nginx.conf 文件,找到

    	server {
        listen       80;
        server_name  localhost;
        #charset koi8-r;
        #access_log  logs/host.access.log  main;
        location / {
            root   html;
            index  index.html index.htm;
           
        }
    

    說明如下圖:
    在這裏插入圖片描述

只需要將文件默認路徑更換成你需要的路徑(建議設置絕對路徑),然後重啓啓動即可,也可以使用命令行nginx -s reload 進行重啓;

  1. 設置代理
    因爲是要快速搭建,所以用個例子來進行;
    例: 你需要去 http://1.1.1.1:8080/api/getData這個接口去請求數據(post請求),在js(使用jQuery)文件這樣寫
    var URL_IP = ''
    var url = URL_IP + '/api/getData'
    var data = {}
     var setting = {
            type: 'POST',
            url: url,
            data: data,
            ContentType: 'application/x-www-form-unlencoded',
            success: function(data){
              //成功回調,即接口訪問成功後執行,data爲返回的數據對象
              console.log(data)
            },
            error: function(err){
              //錯誤回調,即接口訪問出現錯誤後執行,err爲錯誤信息
    			console.error(err)
            }
          } 
      $.ajax(setting);
    
    nginx.conf文件中設置
    	location / {
            root   html;
            index  index.html index.htm;
           
        }
        location /api {
          proxy_pass http://1.1.1.1:8080; 
          proxy_set_header   Host    $host; 
          proxy_set_header   X-Real-IP   $remote_addr; 
          proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for; 
        }  
    
    設置完成重啓nginx即可;在項目上線的時候只需要將js文件中的URL_IP變量的值賦值爲http://1.1.1.1:8080即可;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章