Nginx Nginx在Linux下的入門介紹

2021-09-07 17:19:11 字數 4422 閱讀 5523

[root@blog third_package]# tar -zxf nginx-1.8.0.tar.gz 

[root@blog third_package]# ll nginx-1.8.0

total 652

drwxr-xr-x 6 1001 1001 4096 jul 23 18:17 auto

-rw-r--r-- 1 1001 1001 249124 apr 21 2015 changes

-rw-r--r-- 1 1001 1001 379021 apr 21 2015 changes.ru

drwxr-xr-x 2 1001 1001 4096 jul 23 18:17 conf

-rwxr-xr-x 1 1001 1001 2478 apr 21 2015 configure

drwxr-xr-x 4 1001 1001 4096 jul 23 18:17 contrib

drwxr-xr-x 2 1001 1001 4096 jul 23 18:17 html

-rw-r--r-- 1 1001 1001 1397 apr 21 2015 license

drwxr-xr-x 2 1001 1001 4096 jul 23 18:17 man

-rw-r--r-- 1 1001 1001 49 apr 21 2015 readme

drwxr-xr-x 8 1001 1001 4096 jul 23 18:17 src

安裝之前把依賴的軟體裝上,我這裡用yumyum -y install gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel

[root@blog nginx-1.8.0]# pwd

/installation_package/nginx-1.8.0

[root@blog nginx-1.8.0]#

[root@blog nginx-1.8.0]# ./configure --prefix=/opt/nginx_1

執行./configure後在新增了乙個目錄objs--prefix表示安裝到此目錄,如果不設定預設安裝到/usr/local/nginx

編譯工作:

make

make install

/opt/nginx_1/sbin/nginx啟動,預設使用的是安裝目錄的nginx_home/conf/nginx.conf,也就是/opt/nginx_1/conf/nginx.conf

當然,也可以使用/opt/nginx_1/sbin/nginx -c /opt/nginx_1/conf/nginx.conf指定配置檔案。

我們常用nginx做反向**,在設定反向**前,應先了解下正向**反向**

將到達nginx的請求轉到後端具體的主機,可通過設定上游伺服器****。比如:

}}設定好之後,將上游伺服器127.0.0.1:9999也部署好,就可以通過nginx享受上游伺服器的具體服務了。

但要注意請求的資訊的**,比如後端是一台tomcat,裡面執行乙個servet列印各項引數:

protected void doget(httpservletrequest request, httpservletresponse response) throws servletexception, ioexception
直接訪問tomcat,,列印的資訊是這樣的:

request.getremoteaddr() : 客戶端ip

request.getremotehost() : 客戶端ip

request.getserverport() : 9999

request.getremoteport() : 64494

request.getquerystring() : keyword=hello-world

request.getremoteuser() : null

request.getmethod() : get

request.getlocaladdr() : 服務端ip

request.getlocalname() : 服務端ip

request.getpathinfo() : null

request.getrequesturi() : /myweb/printenvinfoservlet

request.getrequesturl() :

request.getcontextpath() : /myweb只作反向**的設定,訪問nginx,,後列印:

request.getcontextpath() : /myweb可以發現,反向**後protocolremoteaddrserverportrequesturl等引數均有所不同,那麼我們需要設定**時傳遞引數。

nginx配置:

upstream myweb 

...location /myweb

tomcat的/conf/server.xmlhost節點下新增:

訪問,日誌是這樣的:

request.getremoteaddr() : 客戶端ip

request.getremotehost() : 客戶端ip

request.getserverport() : 777

request.getremoteport() : 55022

request.getquerystring() : keyword=hello-world

request.getremoteuser() : null

request.getmethod() : get

request.getlocaladdr() : 127.0.0.1

request.getlocalname() : localhost

request.getpathinfo() : null

request.getrequesturi() : /myweb/printenvinfoservlet

request.getrequesturl() :

request.getcontextpath() : /myweb

怎麼安裝VMwaretools在Linux系統裡

vmwaretools是vmware虛擬機器中很重要的乙個工具包,有些時候在虛擬機器中安裝完作業系統會缺少網絡卡驅動,不能上網,這時只要安裝vmwaretools就可以解決問題,下面以centos為例,來說明vmwaretools的安裝方法 1 開啟vmware workstation虛擬機器,開啟...

Nginx Nginx在Redhat7上安裝教程

cd wget cd nginx 1.6.3 configure prefix home yveshe nginx make make install configure 檢查依賴 make make install 編譯安裝 如果安裝失敗的原因是由於缺少依賴,考慮安裝以下依賴來解決問題 yum i...

socket在windows下和linux下的區別

1 標頭檔案 windows下winsock.h winsock2.h linux下sys socket.h 錯誤處理 errno.h 2 初始化 windows下需要用wsastartup wsadata wsadata err wsastartup 0x202,wsadata if err 0 ...