vBulletin内容不会更新 - mod_expires / Apache问题?

时间:2015-02-04 20:45:31

标签: apache vbulletin mod-expires

抱歉这个很长的问题。我一直在对此进行故障排除,并认为我会分享所有内容。

我正在运行vBulletin 5.1.5(不要给我带来困难)并且我正在试图弄清楚vBulletin软件或Apache问题是否存在问题。

系统:vBulletin 5.1.5,Apache 2.4.7,mod_expires,memcached

无论本地浏览器如何(Chrome和Firefox都这样做)都会出现此问题。

只是从vBulletin 5.1.4升级到5.1.5,此问题立即开始发生。 vBulletin说这是一个Apache服务器问题,他们只会将内容/标题设置为无缓存,或者不管它。

如果有人发布了对某个帖子的回复然后返回主论坛页面,则新回复不会显示为最新回复(该主题仍会显示0个回复)。如果他们然后返回到该主题,则在刷新页面之前,回复不会显示。

我们已清除vBulletin系统缓存,删除了域的所有Cookie并清除了本地缓存。

通过Chrome开发者工具(网络标签),我看到以下内容:

当页面更新时,vBulletin不应该重置日期:在HTTP标题中吗?

我在UTC时间15:12:05发表原帖。我在UTC时间15:12:10后立即回复。页面HTTP标头仍显示日期:格式为15:12:05 UTC。我离开页面进入主论坛页面,然后返回帖子。它仍然显示HTTP标头日期:格式为15:12:05直到我刷新它。所以..客户端没有被告知页面有更新。这是由vBulletin设定的,不是吗?由于页面是动态创建的吗?

我在配置文件中打开了调试并查看了时间戳((在每个呈现页面的底部生成BY vbulletin):

首发 - 当前时间:2015年2月4日星期三11:31:39 -0500 评论后 - 当前时间:2015年2月4日星期三11:31:39 -0500 点击论坛链接 - 当前时间:2015年2月4日星期三11:31:03 -0500 点击刷新 - 当前时间:2015年2月4日星期三11:33:12 -0500 再次点击主题 - 当前时间:2015年2月4日星期三11:31:39 -0500 点击刷新 - 当前时间:2015年2月4日星期三11:35:15 -0500

请注意,当我点击论坛链接时,我会及时回顾(即使我已经发了一个新帖子)。我刷新,我们回到现在。

然后当我再次点击主题时,时间戳与初始发布时间相匹配 - 而不是我发表评论后的时间。再次,我刷新,我们回到当前时间,回复显示。

查看日志:

  1. 我点击新主题GET / forums / new-content / 44 HTTP / 1.1
  2. 我发布了POST / forums / create-content / text / HTTP / 1.1
  3. 页面刷新GET / forums / forum / general / test-forum / 28305-这是另一个新主题
  4. 我添加了回复POST / forums / create-content / text / HTTP / 1.1
  5. 回复显示POST / forums / create-content / loadnode HTTP / 1.1
  6. 我去了GET / forums / forum / general / test-forum后的家长论坛 HTTP / 1.1
  7. 我点击帖子,页面显示和POST / forums / ajax / api / node / incrementNodeview HTTP / 1.1然后GET /forums/foru...-another-testt HTTP / 1.1
  8. 所有内容的状态代码均为200.第6项和第7项都有一个Cache-Control:max-age = 3600以及原始帖子的日期和时间。

    也许我不确定服务器和客户端之间的过期效果如何?从客户端到服务器的过程不应该是......拉下原始页面并在本地缓存它。稍后请求同一页面,向服务器发送请求以获取标题以查看页面是否有新时间,如果匹配则拉取本地副本,如果它们不匹配则发送新副本。 Apache不知道页面是否已更新 - 这是由vBulletin生成的,对吗?

    有什么想法吗?

1 个答案:

答案 0 :(得分:0)

原来这是/ forums目录(在web根目录下)从父目录(/)继承.htaccess指令的问题。那里有许多过期指令正在被听取。现在..弄清楚如何忽略父目录中的.htaccess文件...