分享我的生活
分享能使人快乐

lnmp中nginx静态化的配置

使用张宴先生的配置搭建了nginx的lnmp,也作了博客和论坛,我是这样做静态化的。

建一个discuz.conf 和 wordpress.conf 和nginx.conf放在同一个文件夹下,具体位置具体放置,我的是放在/usr/local/webserver/nginx/conf下面

discuz.conf 的内容如下

location / {
            rewrite ^/archiver/((fid|tid)-[\w\-]+\.html)$ /archiver/index.php?$1 last;
            rewrite ^/forum-([0-9]+)-([0-9]+)\.html$ /forumdisplay.php?fid=$1&page=$2 last;
            rewrite ^/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /viewthread.php?tid=$1&extra=page%3D$3&page=$2 last;
            rewrite ^/space-(username|uid)-(.+)\.html$ /space.php?$1=$2 last;
            rewrite ^/tag-(.+)\.html$ /tag.php?name=$1 last;
        }

wordpress.conf 的内容如下使用 (super cache 加速)

location /
{
autoindex off;
set $wp_super_cache_file ”;
set $wp_super_cache_uri $request_uri;
if ( $request_method = POST )
{
set $wp_super_cache_uri ”;
}
if ( $query_string )
{
set $wp_super_cache_uri ”;
}
if ( $http_cookie ~* “comment_author_|WordPress|wp-postpass_” )
{
set $wp_super_cache_uri ”;
}
if ( $wp_super_cache_uri ~ ^(.+)$ )
{
set $wp_super_cache_file /wp-content/cache/wp_super_cache/$http_host/$1index.html;
}
if ( -f $document_root$wp_super_cache_file )
{
rewrite ^(.*)$ $wp_super_cache_file break;
}
if (-f $request_filename)
{
expires 30d;
break;
}
if (!-e $request_filename)
{
rewrite ^(.+)$ /index.php?q=$1 last;
}
}

(不使用 super cache 加速如下,建议使用上面的,全乎)

location / {
if (-f $request_filename/index.html){
                rewrite (.*) $1/index.html break;
        }
if (-f $request_filename/index.php){
                rewrite (.*) $1/index.php;
        }
if (!-f $request_filename){
                rewrite (.*) /index.php;
        }
}

在你的虚拟机配置中这样配置

在虚拟机配置的第一个大括号中加入一句引用(discuz)

    include discuz.conf;

或者(wordpress)

include wordpress.conf;

检查nginx配置,没有错误,重启

给你个例子

这是我的bbs

  server
  {
    listen       80;
    server_name  bbs.1dle.com;
    index index.html index.htm index.php;
    root  /data0/htdocs/bbs;
    include discuz.conf;
    error_page 404 = /error/404.html;
    error_page 502 = /error/502.html;

    location ~ .*\.(php|php5)?$
    {
      #fastcgi_pass  unix:/tmp/php-cgi.sock;
      fastcgi_pass  127.0.0.1:9000;
      fastcgi_index index.php;
      include fcgi.conf;

    }

    log_format  wwwlogs  ‘$remote_addr – $remote_user [$time_local] “$request” ‘
               ‘$status $body_bytes_sent “$http_referer” ‘
               ‘”$http_user_agent” $http_x_forwarded_for’;
    access_log  /data1/logs/wwwlogs.log  wwwlogs;
  }

赞(0)
未经允许不得转载:RUBLOG-分享我的生活 » lnmp中nginx静态化的配置

我想说 1

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址