基于Nginx下的Joomla伪静态Rewrite配置[原创]

配置文件具体如下,此配置文件已在某行业网站生产环境中实验成功。

user  www webuser;

worker_processes 1;

error_log  /web/logs/nginx_error.log  crit;

pid        /usr/local/nginx/logs/nginx.pid;

#Specifies the value for maximum file descriptors that can be opened by this process.
worker_rlimit_nofile 65535;

events
{
  use epoll;
  worker_connections 65535;
}

http
{
  include       mime.types;
  default_type  application/octet-stream;

  #charse  gb2312;

  server_names_hash_bucket_size 128;
  client_header_buffer_size 32k;
  large_client_header_buffers 1 128k;
  client_max_body_size 8m;

  sendfile on;
  tcp_nopush     on;

  keepalive_timeout 60;

  tcp_nodelay on;

  fastcgi_connect_timeout 300;
  fastcgi_send_timeout 300;
  fastcgi_read_timeout 300;
  fastcgi_buffer_size 128k;
  fastcgi_buffers 8 128k;
  fastcgi_busy_buffers_size 256k;
  fastcgi_temp_file_write_size 256k;
  fastcgi_intercept_errors on;

  gzip on;
  gzip_min_length  1k;
  gzip_buffers     1 64k;
  gzip_http_version 1.0;
  gzip_comp_level 2;
  gzip_types       text/plain application/x-javascript text/css application/xml;
  gzip_vary on;

  server
  {
    listen       203.130.37.35:80;
    server_name www.luxee.com luxee.com;
    index index.php index.html index.htm;
    root  /web/luxee/domains/new.luxee.com/public_html/;

    location / {
      if ( $args ~ "mosConfig_[a-zA-Z_]{1,21}(=|\%3d)" ) {
      set $args "";
        rewrite ^.*$ http://$host/index.php last;
      return 403;}

      if ( $args ~ "base64_encode.*\(.*\)") {
      set $args "";
        rewrite ^.*$ http://$host/index.php last;
      return 403;}

      if ( $args ~ "(\<|%3C).*script.*(\>|%3E)") {
      set $args "";
        rewrite ^.*$ http://$host/index.php last;
      return 403;}

      if ( $args ~ "GLOBALS(=|\[|\%[0-9A-Z]{0,2})") {
      set $args "";
        rewrite ^.*$ http://$host/index.php last;
      return 403;}

      if ( $args ~ "_REQUEST(=|\[|\%[0-9A-Z]{0,2})") {
      set $args "";
        rewrite ^.*$ http://$host/index.php last;
      return 403;}

      if (!-e $request_filename) {
        rewrite (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$ /index.php last;
      break;
      }   
    }
   
    location ~ .*\.(php|php5)?$
    {
      fastcgi_pass  unix:/tmp/php-cgi.sock;
      #fastcgi_pass  127.0.0.1:9000;
      fastcgi_index index.php;
      include fcgi.conf;
    }

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    {
      expires      30d;
    }

    location ~ .*\.(js|css)?$
    {
      expires      12h;
    }

    access_log  /web/logs/luxee.com-access.log;
  }

}


本文来自:韦少乾博客(mven.cn)
详细出处:http://mven.cn/post/53.html

猜你喜欢

转载自eryin.iteye.com/blog/638927