linux下使用nginx做域名映射(安裝,配置)


用tomcat做了個系統放到外網上,一大長串ip加端口號組成的url太不專業,所以用nginx來做域名映射精簡一下。

安裝:

第一步:從http://nginx.org上下載相應的版本nginx-1.10.1.tar.gz

    (或者wget http://nginx.org/download/nginx-1.10.1.tar.gz直接在Linux上用命令下載)

第二步:解壓壓縮包 tar -zxvf nginx-1.10.1.tar.gz;

第三步:進入文件夾 cd nginx-1.10.1;

    由於此tar包是源代碼包,所以用 ./configure 對即將安裝的軟件進行配置,檢查當前的環境是否滿足要安裝軟件的依賴關系,生成makefile文件;

    發現提示錯誤: ./configure: error: the HTTP rewrite module requires the PCRE library. ;

    找資料后發現nginx需要一些依賴庫:

    rewrite 模塊需要 pcre 庫( 下載: http://www.pcre.org/ )
    gzip 模塊需要 zlib 庫 ( 下載: http://www.zlib.net/ )
    ssl 功能需要 openssl 庫( 下載: http://www.openssl.org/ )

    所以再去下載 pcre-8.38.tar.gz,然后解壓:tar...,

    配置:./configure(可以使用--prefix=/usr/local/pcre置頂安裝位置,我沒有用,好像默認安裝在了/usr/local/include目錄),

    編譯:make,  安裝:make install;

    再進入 nginx-1.10.1目錄下,運行./configure。果然又報錯 ./configure: error: the HTTP gzip module requires the zlib library.

    再下載 zlib-1.2.8.tar.gz,解壓,配置,編譯,安裝......

    再去 nginx-1.10.1目錄下,運行./configure,好像沒有報錯了,可能是阿里雲服務器里有openssl庫?(系統是Ubuntu 14.04.4 LTS)

    (我使用 ./configure --prefix=/usr/local/nginx,所以等下去這個目錄下找);

第四步:編譯:make  安裝:make install;

 

配置:

  nginx功能很強大,一般用來做靜態資源服務器和負載均衡,不過我這小網站不用......

  進入/usr/local/nginx(./configure時設置的),進入conf目錄,修改nginx.conf文件

  關於這個文件的講解可以另起一文了,這里就簡單說下

  

  server 是負責配置虛擬主機,listen表示監聽的端口,server_name是訪問域名,

  location是訪問地址的設置,root是設置靜態文件所在的目錄,index設置訪問的文件,有先后順序

  因此輸入 http://服務器ip 會直接訪問/usr/local/nginx/html目錄下的index.html

  我們要映射到tomcat端口,所以修改 location /{} 后面加一個

  location /lovelovetext {  
    proxy_pass http://localhost:8080;  
  }

  這樣就可以直接用 http://服務器ip/應用名訪問 網站了

后續:因為要上傳文件,但是發現用了nginx之后上傳失敗了,F12看一下,報錯:

   Failed to load resource: the server responded with a status of 413 (Request Entity Too Large)

   上傳文件太大...因為nginx默認只能上傳1M的文件。

   所以,修改nginx配置文件nginx.conf,找到找到 http{} 段,在里面加一行 client_max_body_size 10m;

   這樣把最大改成10M,就OK了~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM