導航:首頁 > 配伺服器 > jsp獲得nginx伺服器地址

jsp獲得nginx伺服器地址

發布時間:2022-12-15 02:49:07

㈠ nginx+tomcat7+jsp,請問jsp頁面上如何獲取域名

jsp上的不就是request.getContextPath()嗎? 編譯後 相當於程序中生成了個java類,,現在request.getContextPath() 獲得的是127.0.0.1

㈡ nginx配置負載均衡,訪問頁面不載入JS、CSS等靜態文件,F12查看源代碼發現,jsp獲取basePath錯誤

在NGINX.CONF文件中配置地址和IP:

proxy_set_header Host $host; #從header頭中獲取的主機名
proxy_set_header X-Real-IP $remote_addr;
#獲取header頭中獲取的主機的真實IP
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#獲取header頭中獲取代理者的真實ip

㈢ nginx做反向代理負載均衡 Java怎麼獲取後端伺服器獲取用戶IP

首先,在前端nginx上需要做如下配置:
location /
proxy_set_hearder host $host;
proxy_set_header X-forwarded-for $proxy_add_x_forwarded_for;
proxy_set_header X-real-ip $remote_addr;
};
nginx會在把請求轉向後台real-server前把http報頭中的ip地址進行替換;這樣操作完成後,real-server也需要做一些操作;

public class ClientIPUtils {
/**
* 在很多應用下都可能有需要將用戶的真實IP記錄下來,這時就要獲得用戶的真實IP地址,在JSP里,獲取客戶端的IP地
* 址的方法是:request.getRemoteAddr(),這種方法在大部分情況下都是有效的。但是在通過了Apache,Squid等
* 反向代理軟體就不能獲取到客戶端的真實IP地址了。
* 但是在轉發請求的HTTP頭信息中,增加了X-FORWARDED-FOR信息。用以跟蹤原有的客戶端IP地址和原來客戶端請求的伺服器地址
* @param request
* @return
*/
public static String getClientIp(HttpServletRequest request) {
String ip = request.getHeader("x-forwarded-for");
//String ip = request.getHeader("X-real-ip");
logger.debug("x-forwarded-for = {}", ip);
if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
logger.debug("Proxy-Client-IP = {}", ip);
}
if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("WL-Proxy-Client-IP");
logger.debug("WL-Proxy-Client-IP = {}", ip);
}
if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
logger.debug("RemoteAddr-IP = {}", ip);
}
if(StringUtils.isNotBlank(ip)) {
ip = ip.split(",")[0];
}
return ip;

}
}

㈣ web伺服器 Nginx

(1)概念

Web伺服器是一台使用HTTP協議與客戶機瀏覽器進行信息交流(因此又稱為HTTP伺服器)、為互聯網客戶提供服務(信息瀏覽,下載資源等)的主機。發展趨勢:從HTML到XML、從有線到無線、從無聲到有聲

1.Linux是架設安全高效Web伺服器的操作系統

架設Web伺服器常見的操作系統:Windows、Linux、Unix。Linux安全性能最高,可以支持多個硬體平台,可以根據不同需求隨意修改、調整與復制各種程序的源碼以及發布在互聯網上,網路功能比較強大。

2.目前主流伺服器:Apache、 Nginx、 IIS

Unix/Linux操作系統下使用最廣泛的免費HTTP伺服器:Apache、Nginx。Windows(NT/2000/2003)操作系統使用ⅡS,綜合使用最多的Web伺服器是 IIs、Apache。

選擇WEB伺服器應考慮的本身特性因素有:性能、安全性、日誌和統計、虛擬主機、代理伺服器、緩沖服務和集成應用程序等。下面介紹目前最主流的三大web伺服器:

① 大型

IIS:

微軟的Internet Information Services (IIS),IIS 允許在互聯網上發布信息,提供了一個圖形界面的管理工具,稱為Internet服務管理器,可用於監視配置和控制Internet服務。IIS是一種Web服務組件,其中包括Web伺服器(網頁瀏覽)、FTP伺服器(文件傳輸)、NNTP伺服器(新聞服務)和SMTP伺服器(郵件傳輸),使得在網路上發布信息很容易。它提供ISAPI(Intranet Server API)作為擴展Web伺服器功能的編程介面,它還提供一個Internet資料庫連接器,可以實現對資料庫的查詢和更新。

Apache:

Apache是世界上用的最多的Web伺服器,源於NCSAhttpd伺服器的補丁(pache 補丁)。它的成功之處主要在於:源代碼開放、有開放的開發隊伍、支持跨平台的應用(可以運行在幾乎所有的Unix、Windows、Linux系統平台上)、可移植性。

② 小型

nginx:

nginx的模塊都是靜態編譯的,對fcgi的支持非常好,在處理鏈接的的方式上nginx支持epoll,支持通用語言介面(如:phppython、perl等),支持正向和反向代理、虛擬主機、url重寫、壓縮傳輸等。

(2)工作原理

當客戶端Web瀏覽器連到伺服器上並請求文件時,伺服器將處理該請求並將文件反饋到該瀏覽器上,附帶的信息會告訴瀏覽器如何查看該文件(即文件類型)。Web伺服器主要是處理向瀏覽器發送HTML以供瀏覽,而應用程序伺服器提供訪問商業邏輯的途徑以供客戶端應用程序使用。應用程序伺服器可以管理自己的資源,例如看大門的工作(gate-keeping ties)包括安全(security),事務處理(transaction processing),資源池(resource pooling), 和消息(messaging)。就象Web伺服器一樣,應用程序伺服器配置了多種可擴展(scalability)和容錯(fault tolerance)技術。Web伺服器的工作原理一般可分成如下4個步驟:

① 連接過程:是Web伺服器和其瀏覽器之間所建立起來的一種連接。查看連接過程是否實現,用戶可以找到和打開socket這個虛擬文件,這個文件的建立意味著連接過程這一步驟已經成功建立。

② 請求過程:是Web的瀏覽器運用socket這個文件向其伺服器而提出各種請求。

③ 應答過程:是運用HTTP協議把在請求過程中所提出來的請求傳輸到Web的伺服器,進而實施任務處理,然後運用HTTP協議把任務處理的結果傳輸到Web的瀏覽器,同時在Web的瀏覽器上面展示上述所請求之界面。

④ 關閉連接:是當上一個步驟--應答過程完成以後,Web伺服器和其瀏覽器之間斷開連接之過程。Web伺服器上述4個步驟環環相扣、緊密相聯,邏輯性比較強,可以支持多個進程、多個線程以及多個進程與多個線程相混合的技術。

Web伺服器可以解析HTTP協議。當Web伺服器接收到一個HTTP請求(request),會返回一個HTTP響應(response)。為了處理一個request,Web伺服器可以response一個靜態頁面(HTML頁面)或圖片,進行頁面跳轉(redirect),或把動態響應委託給伺服器端。Web伺服器的代理模型非常簡單。當一個request被送到Web伺服器里來時,它只單純的把request傳遞給可以很好的處理request的程序(伺服器端腳本,如:CGI腳本,JSP腳本,servlets,ASP腳本,伺服器端JavaScript等)。Web伺服器僅僅提供一個可以執行伺服器端程序和返回(程序所產生的)響應的環境,而不會超出職能范圍。伺服器端程序功能通常有:事務處理、資料庫連接、和消息等。雖然Web伺服器不支持事務處理或資料庫連接池,但它可以配置各種策略來實現容錯性、可擴展性(如:負載平衡、緩沖)。集群特徵經常被誤認為僅僅是應用程序伺服器專有的特徵。

(3)配置

如何設置默認文檔;在同一台伺服器上架設多個Web站點;(可以通過改變埠號)創建Web虛擬目錄;

1、了解DNS主機名和IP地址。

如果此WEB伺服器在Internet上,需向ISP申請和注冊此伺服器的DNS主機名和IP地址。如果此伺服器只在企業網內使用,則在內部的DNS伺服器上注冊。

2、打開伺服器文檔,選擇"埠"-"Internet埠",啟用"TCP/ IP埠"。

3、選擇"Internet協議",完成以下選項後,保存文檔。

① 綁定主機名:

A、選擇"是"則您可在"主機名"項中輸入主機別名,WEB用戶可用此別名替代Domino伺服器名訪問WEB伺服器。

B、選擇"否"(預設)則不允許使用別名。

② DNS查詢: 選擇"是"則Domino伺服器查詢發送請求的WEB客戶機的DNS名。

③ Domino日誌文件和資料庫將包含WEB客戶機的DNS主機名: 選擇"否"(預設)則不查詢,Domino日誌文件和資料庫將只包含WEB客戶機的IP地址( 注意:選擇"否"將提高Domino伺服器性能,因為伺服器不使用資源執行DNS查詢

④ "允許HTTP客戶瀏覽資料庫":選擇"是"則允許WEB用戶在URL中使用OpenServer命令來顯示伺服器上資料庫列表。選擇"否"(預設)則不允許。但即使WEB用戶不能看到伺服器上資料庫列表,他們仍能打開有許可權訪問的單個資料庫。

4、啟動HTTP任務。在伺服器控制台上,輸入:loap http

小型項目

(1)概念

1、Nginx(俄羅斯程序設計師Igor Sysoev用C語言進行編寫)是一款輕量級的Web 伺服器/反向代理伺服器及電子郵件(IMAP/POP3/SMTP)代理伺服器。

2、特點:佔有內存少(在高連接並發的情況下,Nginx是Apache伺服器不錯的替代品,能夠支持高達 50,000 個並發連接數的響應),並發能力強。

3、中國大陸使用nginx網站用戶有:網路、京東、新浪、網易、騰訊、淘寶等。

4、Nginx代碼完全用C語言從頭寫成,已經移植到許多體系結構和操作系統,包括:Linux、FreeBSD、Solaris、Mac OS X、AIX以及Microsoft Windows。

5、Nginx有自己的函數庫,並且除了zlib、PCRE和OpenSSL之外,標准模塊只使用系統C庫函數。而且,如果不需要或者考慮到潛在的授權沖突,可以不使用這些第三方庫。

(2)安裝

官網:http://nginx.org/

選擇要安裝的版本:

(3)使用

打開conf/nginx.conf,修改埠號,和主頁根地址為:打包後index.html的目錄

模擬域名配置(本地域名設置):

在瀏覽器地址欄輸入配置好的「域名:埠號」回車:

㈤ 如何查找nginx的安裝目錄

有時我們需要查找nginx的安裝目錄,但又不知道在哪,如何通過命令查找呢,我為大家提供兩個方法。

方法一:輸入Linux命令 ps -ef | grep nginx 

master後面地址即是nginx的安裝目錄

有的伺服器上使用方法一,master後不顯示安裝目錄,如下

那這時就為大家提供第二種方法

方法二:利用上面的命令查看nginx的PID,就用上圖中的16150,然後通過該進程ID來查找當前運行的nginx目錄,命令如下

ll /proc/16150/exe

這樣就能查出nginx的安裝目錄了

㈥ nginx做反向代理負載均衡 Java怎麼獲取後端伺服器獲取用戶IP

/**
*獲取訪問者IP地址
*<p>在一般情況下使用Request.getRemoteAddr()即可,但是經過nginx等反向代理軟體後,這個方法會失效。</p>
*<p>本方法先從Header中獲取X-Real-IP,如果不存在再從X-Forwarded-For獲得第一個IP(用,分割)。</p>
*<p>如果還不存在則調用Request.getRemoteAddr()。</p>
*@paramrequest
*@return
*/
publicstaticStringgetIp(HttpServletRequestrequest){
Stringip=request.getHeader("X-Real-IP");
if(ValidateUtil.isNotEmpty(ip)&&!"unknown".equalsIgnoreCase(ip)){
returnip;
}
ip=request.getHeader("X-Forwarded-For");
if(ValidateUtil.isNotEmpty(ip)&&!"unknown".equalsIgnoreCase(ip)){
intindex=ip.indexOf(",");
if(index!=-1){
returnip.substring(0,index);
}else{
returnip;
}
}else{
returnrequest.getRemoteAddr();
}
}

閱讀全文

與jsp獲得nginx伺服器地址相關的資料

熱點內容
python經典庫 瀏覽:839
善良小夷子女演員 瀏覽:973
大奶女電影版 瀏覽:653
汽車遙控編程器 瀏覽:784
方舟在伺服器如何發全體文字 瀏覽:346
一部很多女子格鬥的電影 瀏覽:770
外國大胸美女電影推薦 瀏覽:208
大尺很色床戲電影 瀏覽:432
鄭州阿里程序員 瀏覽:131
韓國愛情推理片全部復制 瀏覽:462
台灣影視國語 瀏覽:571
穿越之我那三千個兄弟訓誡 瀏覽:486
連母親都收的小說 瀏覽:839
葉子媚演過尺較大的電影在線觀看 瀏覽:832
app反感怎麼解決 瀏覽:332
極光設置app是什麼 瀏覽:79
app廣告怎麼賺錢 瀏覽:917
男主被系統控制的小說下載 瀏覽:951
鈦2電影高清完整版 瀏覽:440
linux啟動項目命令 瀏覽:531