首页 > 代码库 > 最后的配置部分:LNMP+Tomcat

最后的配置部分:LNMP+Tomcat

Nginx与PHP部分

mkdir /www/php -pecho -e "<?php\n\tphpinfo();\n?>" > /www/php/index.phpvim /usr/local/nginx/conf/nginx.conf
#==============Nginx代理PHP端===================        location ~ \.php$ {            fastcgi_pass   127.0.0.1:9000;            fastcgi_index  index.php;        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
#上面那个注视掉,改成下面的不然就出FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream这个错
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
}

Nginx+Tomcat部分

mkdir /www/jsp -pecho "this is jsp" >>/www/jsp/index.jspecho "this is jsp" >>/www/do/index.dovim /usr/local/tomcat/conf/server.xml

配置Tomcat中的server.conf,修改tomcat家目录

vim /usr/local/tomcat/conf/server.xml
<!-- 索搜此项修改默认WEB端口,这里默认保持不变 -->    <Connector port="8080" protocol="HTTP/1.1"                connectionTimeout="20000"               redirectPort="8443" /><!-- 可以修改域名或者IP,但作代理请保持localhost -->      <Host name="localhost"  appBase="webapps"            unpackWARs="true" autoDeploy="true"><!-- 新增此项修改WEB的家目录 -->        <Context path="" docBase="/www"></Context>

配置nginx中的nginx.conf,让其能代理jsp网页

#==========Nginx代理JSP段================        location ~ (\.jsp)|(\.do)$ {            index index.jsp;            proxy_pass http://127.0.0.1:8080;   #来自jsp请求交给tomcat处理            proxy_redirect off;            proxy_set_header Host $host;    #后端的Web服务器可以通过X-Forwarded-For获取用户真实IP            proxy_set_header X-Real-IP $remote_addr;            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;            client_max_body_size 10m;   #允许客户端请求的最大单文件字节数            client_body_buffer_size 128k; #缓冲区代理缓冲用户端请求的最大字节数            proxy_connect_timeout 90;   #nginx跟后端服务器连接超时时间(代理连接超时)            proxy_read_timeout 90;      #连接成功后,后端服务器响应时间(代理接收超时)            proxy_buffer_size 4k;       #设置代理服务器(nginx)保存用户头信息的缓冲区大小            proxy_buffers 6 32k;        #proxy_buffers缓冲区,网页平均在32k以下的话,这样设置            proxy_busy_buffers_size 64k;#高负荷下缓冲大小(proxy_buffers*2)            proxy_temp_file_write_size 64k; #设定缓存文件夹大小,大于这个值,将从upstream服务器传        }        location ~ .*\.(gif|jpg|png|bmp|swf)$   #由nginx处理静态页面        {        expires 30d;   #使用expires缓存模块,缓存到客户端30天        }        error_page  404              /404.html;   #错误页面        error_page   500 502 503 504  /50x.html;        location = /50x.html {            root   html;        }

------------------------------------------

完整的nginx.conf文件,仅供参考

user  www;worker_processes  1;error_log  logs/error.log;pid        logs/nginx.pid;events {    worker_connections  1024;}http {    include       mime.types;    default_type  application/octet-stream;    log_format  main  $remote_addr - $remote_user [$time_local] "$request"                       $status $body_bytes_sent "$http_referer"                       "$http_user_agent" "$http_x_forwarded_for";    access_log  logs/access.log  main;    server_names_hash_bucket_size 128;    client_header_buffer_size 32k; #客户端请求头部的缓冲区大小,一般一个请求头的大小不会超过1k    large_client_header_buffers 4 32k; #客户请求头缓冲大小 nginx默认会用client_header_buffer_size这个buffer来读取header值    client_max_body_size 8m; #设定通过nginx上传文件的大小    sendfile        on;    keepalive_timeout  65; #===================重要位置============    fastcgi_connect_timeout 300; #指定连接到后端FastCGI的超时时间。    fastcgi_send_timeout 300; #向FastCGI传送请求的超时时间,这个值是指已经完成两次握手后向FastCGI传送>请求的超时时间。    fastcgi_read_timeout 300; #接收FastCGI应答的超时时间,这个值是指已经完成两次握手后接收FastCGI应答>的超时时间。    fastcgi_buffer_size 254k; #指定读取FastCGI应答第一部分需要用多大的缓冲区    fastcgi_buffers 16 256k; #指定本地需要用多少和多大的缓冲区来缓冲FastCGI的应答。    fastcgi_busy_buffers_size 512k; #这个指令我也不知道是做什么用,只知道默认值是fastcgi_buffers的两倍。    fastcgi_temp_file_write_size 512k; #在写入fastcgi_temp_path时将用多大的数据块,默认值是fastcgi_buffers的两倍。    #gzip  on;    gzip              on; #该指令用于开启或关闭gzip模块(on/off)    gzip_min_length   1k; #设置允许压缩的页面最小字节数,页面字节数从header头得content-length中进行获>取    gzip_buffers      4 16k; #设置系统获取几个单位的缓存用于存储gzip的压缩结果数据流    gzip_http_version 1.0; #识别http的协议版本    gzip_comp_level   2;   #gzip压缩比,1压缩比最小处理速度最快         #匹配mime类型进行压缩,无论是否指定,”text/html”类型总是会被压缩的    gzip_types        text/plain application/x-javascript text/css application/xml text/javascript;    gzip_vary         on; #和http头有关系,加个vary头,给代理服务器用的    server {        listen       80;        server_name 自己的网站名;        #charset koi8-r;        #access_log  logs/host.access.log  main;        root /www;        location / {            index  index.html index.htm index.jsp index.php;        }#===========PHP段=================        location ~ \.php$ {            fastcgi_pass   127.0.0.1:9000;            fastcgi_index  index.php;        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;           fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;           include        fastcgi_params;        }#============Tomcat段=============        location ~ (\.jsp)|(\.do)$ {            index index.jsp;            proxy_pass http://127.0.0.1:8080;   #来自jsp请求交给tomcat处理            proxy_redirect off;            proxy_set_header Host $host;    #后端的Web服务器可以通过X-Forwarded-For获取用户真实IP            proxy_set_header X-Real-IP $remote_addr;            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;            client_max_body_size 10m;   #允许客户端请求的最大单文件字节数            client_body_buffer_size 128k; #缓冲区代理缓冲用户端请求的最大字节数            proxy_connect_timeout 90;   #nginx跟后端服务器连接超时时间(代理连接超时)            proxy_read_timeout 90;      #连接成功后,后端服务器响应时间(代理接收超时)            proxy_buffer_size 4k;       #设置代理服务器(nginx)保存用户头信息的缓冲区大小            proxy_buffers 6 32k;        #proxy_buffers缓冲区,网页平均在32k以下的话,这样设置            proxy_busy_buffers_size 64k;#高负荷下缓冲大小(proxy_buffers*2)            proxy_temp_file_write_size 64k; #设定缓存文件夹大小,大于这个值,将从upstream服务器传        }        location ~ .*\.(gif|jpg|png|bmp|swf)$   #由nginx处理静态页面        {        expires 30d;   #使用expires缓存模块,缓存到客户端30天        }        error_page  404              /404.html;   #错误页面        error_page   500 502 503 504  /50x.html;        location = /50x.html {            root   html;        }    }


ok,就到这里了

参考:Linux下Nginx+Tomcat整合的安装与配置

 

最后的配置部分:LNMP+Tomcat