MJJ论坛

 找回密码
 注册
查看: 2569|回复: 5

[已解决] nginx反向代理缓存

[复制链接]
发表于 2014-12-17 11:31:12 | 显示全部楼层 |阅读模式
请教1个ng反代缓存的问题,
1.当不缓存动态时,只能打开首页。
2.当缓存所有时,可以访问动态页面,但登陆时报错。
3.当去掉缓存,只代理,一切正常
nginx配置:
http://paste.ideaslabs.com/show/nmsd6VDKR5

发表于 2014-12-17 11:51:27 | 显示全部楼层
采用伪静态了吗?
 楼主| 发表于 2014-12-17 17:03:57 | 显示全部楼层
qxwo 发表于 2014-12-17 11:51
采用伪静态了吗?

没有,被代理的网站未使用伪静态
发表于 2014-12-17 17:34:27 | 显示全部楼层
动态页面需要在 header 加入 no-cache 参数来控制避免被缓存。php 也可以加。
发表于 2014-12-17 18:26:47 | 显示全部楼层
gegewu 发表于 2014-12-17 17:03
没有,被代理的网站未使用伪静态
  1. server {
  2.     listen 80;
  3.                 #listen [::]:80;
  4.                 server_name www.x.net;
  5.                 index  index.php;

  6.                 root  /home/wwwroot/cdn.x.net;
  7.                 #error_page   404   /404.html       
  8. location ~ ^/(index.php|e|listinfo|tag|akcms) {
  9.         proxy_pass  http://69.163.35.11;
  10.         #Proxy Settings
  11.         proxy_redirect     off;
  12.         proxy_set_header   Host             $host;
  13.         proxy_set_header   X-Real-IP        $remote_addr;
  14.         proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
  15.         proxy_max_temp_file_size 0;
  16.         proxy_cache cache_one;  
  17.         proxy_cache_valid 200 304 10m;
  18.         proxy_cache_key $host$uri$is_args$args;
  19.         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  20.         expires 10m;
  21.                 rewrite ^([^\.]*)/listinfo-([0-9]+)-([0-9]+)\.html$ $1/e/action/ListInfo/index.php?classid=$2&page=$3 last;
  22.                 rewrite ^/tag/(.+)/$ /akcms_page.php?template=search.htm&keywords=$1 last;
  23.                 rewrite ^/tag/(.+)/page-([0-9]+)$ /akcms_page.php?template=search.htm&keywords=$1&page=$2;
  24.                 rewrite ^([^\.]*)/showinfo-([0-9]+)-([0-9]+)-([0-9]+)\.html$ $1/e/action/ShowInfo.php?classid=$2&id=$3&page=$4 last;
  25.                 rewrite ^([^\.]*)/infotype-([0-9]+)-([0-9]+)\.html$ $1/e/action/InfoType/index.php?ttid=$2&page=$3 last;
  26.                 rewrite ^([^\.]*)/tags-(.+?)-([0-9]+)\.html$ $1/e/tags/index.php?tagname=$2&page=$3 last;
  27. }
  28. location ~ .*\.(gif|jpg|png|htm|html|css|js|flv|ico|swf)(.*) {
  29.         proxy_pass  http://69.163.35.11;
  30.         #Proxy Settings
  31.         proxy_redirect     off;
  32.         proxy_set_header   Host             $host;
  33.         proxy_set_header   X-Real-IP        $remote_addr;
  34.         proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
  35.         proxy_max_temp_file_size 0;
  36.         proxy_cache cache_one;  
  37.         proxy_cache_valid 200 304 3d;
  38.         proxy_cache_key $host$uri$is_args$args;
  39.         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  40.         expires 10d;
  41.    }
  42.                 }
复制代码

不清楚,我只能把我用的给你参考下
   
 楼主| 发表于 2014-12-18 09:51:41 | 显示全部楼层
Showfom 发表于 2014-12-17 17:34
动态页面需要在 header 加入 no-cache 参数来控制避免被缓存。php 也可以加。

具体怎么写?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|MJJ论坛

Copyright MJJ论坛 © 2022 All Rights Reserved.

快速回复 返回顶部 返回列表