Home Backend Development PHP Tutorial tomcat gets the real user IP of Nginx

tomcat gets the real user IP of Nginx

Jul 29, 2016 am 09:06 AM
proxy quot request tomcat

Required: Add proxy_set_header X-Real-IP $remote_addr;

upstream tomcat_server { 
            server localhost:8080 weight=1;
    } 

    server {
        listen       80;
        server_name 192.168.40.116;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

	location ~* "\.(jsp|do)$" { #当请求的是jsp或do文件时直接到tomcat上去取
     	 	#root  html;
      	 	#index index.html index.htm;
         	#proxy_pass http://192.168.18.201/;
          	proxy_pass http://tomcat_server;
		client_max_body_size     2048m;
       		client_body_buffer_size  128k;
       		proxy_connect_timeout    600;
       		proxy_read_timeout       600;
       		proxy_send_timeout       6000;
       		proxy_buffer_size        16k;
       		proxy_buffers            64k;
       		proxy_busy_buffers_size 64k;
       		proxy_temp_file_write_size 64k;
        }

        location / {
           #发布目录/data/www 
        #    root   /home/ding/ITsoftware/tomcat/webapps/100mshCloud;
	#   fastcgi_pass   192.168.40.116:8080;
  	  <strong> proxy_set_header  X-Real-IP  $remote_addr;  </strong>
 	   proxy_pass http://tomcat_server/; #注释默认两行,新增一行。
        #    index  index.html index.htm;
        }
Copy after login
tomcat Get:

public static String getRemoteAddrIp(HttpServletRequest request) {  
    String ipFromNginx = getHeader(request, "X-Real-IP");  
    System.out.println("ipFromNginx:" + ipFromNginx);  
    System.out.println("getRemoteAddr:" + request.getRemoteAddr());  
    return StringUtil.isEmpty(ipFromNginx) ? request.getRemoteAddr() : ipFromNginx;  
}  
  
  
private static String getHeader(HttpServletRequest request, String headName) {  
    String value = request.getHeader(headName);  
    return !StringUtils.isBlank(value) && !"unknown".equalsIgnoreCase(value) ? value : "";  
}  
Copy after login

The above introduces how tomcat obtains the real user IP of Nginx, including the relevant content. I hope it will be helpful to friends who are interested in PHP tutorials.

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to deploy jar project in tomcat How to deploy jar project in tomcat Apr 21, 2024 am 07:27 AM

To deploy a JAR project to Tomcat, follow these steps: Download and unzip Tomcat. Configure the server.xml file, set the port and project deployment path. Copies the JAR file to the specified deployment path. Start Tomcat. Access the deployed project using the provided URL.

How to allow external network access to tomcat server How to allow external network access to tomcat server Apr 21, 2024 am 07:22 AM

To allow the Tomcat server to access the external network, you need to: modify the Tomcat configuration file to allow external connections. Add a firewall rule to allow access to the Tomcat server port. Create a DNS record pointing the domain name to the Tomcat server public IP. Optional: Use a reverse proxy to improve security and performance. Optional: Set up HTTPS for increased security.

Where is the tomcat installation directory? Where is the tomcat installation directory? Apr 21, 2024 am 07:48 AM

Tomcat installation directory: Default path: Windows: C:\Program Files\Apache Software Foundation\Tomcat 9.0macOS:/Library/Tomcat/Tomcat 9.0Linux:/opt/tomcat/tomcat9 Custom path: You can specify it during installation. Find the installation directory: use whereis or locate command.

How to deploy multiple projects in tomcat How to deploy multiple projects in tomcat Apr 21, 2024 am 09:33 AM

To deploy multiple projects through Tomcat, you need to create a webapp directory for each project and then: Automatic deployment: Place the webapp directory in Tomcat's webapps directory. Manual deployment: Manually deploy the project in Tomcat's manager application. Once the project is deployed, it can be accessed by its deployment name, for example: http://localhost:8080/project1.

How to check the number of concurrent connections in tomcat How to check the number of concurrent connections in tomcat Apr 21, 2024 am 08:12 AM

How to check the number of concurrent Tomcat connections: Visit the Tomcat Manager page (http://localhost:8080/manager/html) and enter your user name and password. Click Status->Sessions in the left navigation bar to see the number of concurrent connections at the top of the page.

Where is the root directory of the tomcat website? Where is the root directory of the tomcat website? Apr 21, 2024 am 09:27 AM

The Tomcat website root directory is located in Tomcat's webapps subdirectory and is used to store web application files, static resources, and the WEB-INF directory; it can be found by looking for the docBase attribute in the Tomcat configuration file.

How to check the port number of tomcat How to check the port number of tomcat Apr 21, 2024 am 08:00 AM

The Tomcat port number can be viewed by checking the port attribute of the <Connector> element in the server.xml file. Visit the Tomcat management interface (http://localhost:8080/manager/html) and view the "Status" tab. Run "catalina.sh version" from the command line and look at the "Port:" line.

How to run two projects with different port numbers in tomcat How to run two projects with different port numbers in tomcat Apr 21, 2024 am 09:00 AM

Running projects with different port numbers on the Tomcat server requires the following steps: Modify the server.xml file and add a Connector element to define the port number. Add a Context element to define the application associated with the port number. Create a WAR file and deploy it to the corresponding directory (webapps or webapps/ROOT). Restart Tomcat to apply changes.

See all articles