tengine(Nginx)优化实践——网站运维

续tomcat8运维与实践,这里我说一下代理服务器Nginx的配置与实践,这里我用的事Nginx的淘宝衍生版tengine。

一、服务器介绍

CPU核数:1核
内存大小:512MB
系统名称:CentOS 6.3 64位 安全加固版
宽带:1M
服务器地址:www.yi18.net
web服务器:Tomcat8


二、主要功能

在配置Nginx我们先要想我们能用到他的什么功能,其实作为菜鸟的我来说还是在网站溜达了很久,因为其实tomcat就可以做一个完整的web服务器,为什么我们还要做一个反向代理 服务器呢?我这里主要用到一下功能。
1、动静分离,比如css、图片、js这些就直接用Nginx服务器,由于我的Tomcat配置的最大内存才100M
2、静态文件缓存,比如css、图片、js等做缓存
3、防止图片盗链,现在很多网站都对自己的网站做了防止盗链,也就是别人的网站不能直接通过图片的地址显示,这样做的目的并不是为了版权,其实我的网站的数据也是来自网上,这样只是为了节省自己网站的流量。
4、防止IP直接访问,如直接输入 http://115.29.169.61 就会直接变成 http://www.yi18.net 直接使用域名。其实这样的作用不大,但如果网站是做域名做了处理相关的操作,这样IP和域名就有很大的区别。这里可以直接转,就不用再去判断是IP还是域名了。
5、文件压缩,我是配置了压缩,但好像没有用,开来还是有时间自己吧css、js这些文件压缩一下?
6、禁止直接访问一些目录,如class下的配置文件等。

现在好像只用到这些功能,如果后续还需要,我就加上。

三、 location匹配符优先级

  1. =
  2. /a.jsp
  3. ^~ +目录
  4. ~或~*+文件
  5. /

这里的优先级与配置的位置无关,如果满足优先级高的,就会忽略低的。
location  = /a.jsp {1……}
location  = /a.jsp^2……}这里就会忽略第二个。
我建议我们可以按照优先级高的先配置,在依次的往下配置。

四、我的配置文件

贴出配置文件nginx.conf

user  nobody;
worker_processes  2;
# [ debug | info | notice | warn | error | crit ] 
error_log  /home/logs/nginx.error_log  info;
#pid        logs/nginx.pid;
events {
     use epoll;
    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;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    #禁止通过IP访问,直接转向域名
    server {
	listen 80 default_server;
	server_name _;
	rewrite ^ http://www.yi18.net$request_uri?;
    }
    
    server {
        listen       80;
        server_name  www.yi18.net;
        #禁止访问WEB-INF目录
	location ^~ /(WEB-INF)/ {
	      deny all;
	}
        #
        location ^~ /img/ {
           root /home/www/yi18;
	    access_log off;
	    expires 30d;
	    valid_referers none blocked *.yi18.net;
	    if ($invalid_referer){
		return 403;
		#rewrite ^/ http://www.yi18.net/403.gif;
	    }
	    
         }
        location ^~ /common/ {
         	    root /home/www/yi18;
	    access_log off;
	    expires 1d;   
	    
         }
        location ~* \.(htm|html|txt|ico)$ {
	      root /home/www;
	      access_log off;
	            
	 }

	 location / {
            proxy_pass http://115.29.169.61:8080/yi18/;
        }

        error_page 502 503 500 /500.html;
        error_page 404 /404.html;
        error_page 403 /403.html;
    
    }

}

www.yi18.net问题任然很多,还需修改。
这里在附上Tomcat的优化与配置http://my.oschina.net/mynote/blog/181613

你可能感兴趣的:(nginx配置,tengine配置,服务器运维)