导航:首页 > 配服务器 > 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服务器地址相关的资料

热点内容
服务器无影响是怎么回事 浏览:950
比德电子采购平台加密 浏览:200
加密货币400亿 浏览:524
植发2次加密 浏览:44
vc6查看编译的错误 浏览:595
心理大全pdf 浏览:1002
区域链加密币怎么样 浏览:343
查找命令符 浏览:95
压缩工具zar 浏览:735
白盘怎么解压 浏览:474
辰语程序员学习笔记 浏览:47
程序员被公司劝退 浏览:523
java三子棋 浏览:692
加密空间怎么强制进入 浏览:345
ug分割曲线命令 浏览:209
学码思程序员 浏览:609
自考云学习app为什么登不上 浏览:410
domcer服务器昼夜更替怎么搞 浏览:436
plc和单片机哪个好 浏览:535
帝国神话组建云服务器 浏览:827