当前位置:Gxlcms > PHP教程 > Nginx配置总结

Nginx配置总结

时间:2021-07-01 10:21:17 帮助过:10人阅读

修改nginx服务器配置,在conf文件下的nginx.conf文件。

#user nobody;   #运行用户#worker_processes 1;    #启动进程数,通常设置成和cpu数目相同#error_log /var/log;    #错误日志
events {
    worker_connections 1024;#单个后台work process进程最大并发链接数
}

#设定http服务器
http{
     #设定mime类型,类型由mime.type文件定义
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
    #设定日志格式
    access_log    /var/log/nginx/access.log;
    sendfile on;
    #连接超时时间#keepalive_timeout  0;
    keepalive_timeout  65;
    tcp_nodelay        on;

    #集群中的所有后台服务器的配置信息,用于负载均衡
    upstream local_tomcat{
        server 192.168.0.111:80;
        server 192.168.0.109:8080;
    }
    server{
        listen 8090;    #当前代理服务器监听端口
        server_name  localhost:80;  #监听后要转到地址#charset koi8-r;#access_log  logs/host.access.log  main;        location / {    #location表示匹配路径,/表示所有请求
        root   html;  #静态文件存放的路径
        index  index.html index.htm;  #没有主页时,此为主页,可多个
        }

        #error_page  404              /404.html;# redirect server error pages to the static page/50x.html
        error_page   500502503504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

常见问题总结:
1. nginx+tomcat影响request值
request.getScheme() //总是 http,而不是实际的http或https
request.isSecure() //总是false(因为总是http)
request.getRemoteAddr() //总是 nginx 请求的 IP,而不是用户的IP
request.getRequestURL() //总是 nginx 请求的URL 而不是用户实际请求的 URL
request.getServerName //总是nginx请求的ip
request.getServerPort //总是nginx请求的端口
response.sendRedirect( 相对url ) //总是重定向到 http 上 (因为认为当前是 http 请求)
解决方法:
修改nginx配置:

proxy_set_header Host $host;   #解决getRequestURL、getServerName、getServerPort问题
proxy_set_header X-Real-IP $remote_addr;#把真实的ip发送给转发的web服务器
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;#解决request.getScheme()只能返回http而不是https问题

配置tomcat的server.xml的Engine模块,配置一个value

< ValveclassName="org.apache.catalina.valves.RemoteIpValve"remoteIpHeader="X-Forwarded-For"protocolHeader="X-Forwarded-Proto"protocolHeaderHttpsValue="https" />

版权声明:本文为博主原创文章,未经博主允许不得转载。

以上就介绍了Nginx配置总结,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

人气教程排行