• nginx下使用memcache



    nginx配置支持memcache,但不支持写,支持读,所以读取部分由程序设置,整个代码如下

    nginx的server段配置如下:

    #将静态文件放入memcache

    location ~* .(gif|jpg|jpeg|png|bmp|swf|css|js)$ {
                    root /usr/share/nginx/html;
                    set $memcached_key $uri;
                    memcached_pass 127.0.0.1:11211;
                    error_page 404 = @goto404;
            }

    #从后端程序设置缓存
            location @goto404{
                    fastcgi_pass   127.0.0.1:9000;
                    fastcgi_index  index.php;
                    fastcgi_param  SCRIPT_FILENAME  /usr/share/nginx/html/$fastcgi_script_name;
                    include        fastcgi_params;
                    rewrite ^(.*)? /goto.php?q=$1 break;
            }


    goto.php源码如下:
    define("PUBLIC_DIR", '/usr/share/nginx/html');
    $file = $_GET['q'];

    if( file_exists( PUBLIC_DIR . $file ) ){
        $memcache = new Memcache;
        $memcache->addserver("127.0.0.1", 11211);
        $value = file_get_contents( PUBLIC_DIR . $file );
        $memcache->set($file, $value, 0, 60000);
        header("Location: {$file}");
        
    }else{
        header("Status: 404 Not Found");    
    }

  • 相关阅读:
    转:每个架构师都应该研究下康威定律
    使用OpenShiftFQ上外网
    关系模式设计
    数据库应用系统工程过程
    数据库系统
    四种常见 Git 工作流比较
    Git 进阶指南
    C#高性能TCP服务的多种实现方式
    浮动广告
    <span></span>
  • 原文地址:https://www.cnblogs.com/itfenqing/p/4429441.html
Copyright © 2020-2023  润新知