2014-02-09 85 views
2

我在GAE上安裝了wordpress 3.8.1 - 從另一臺主機上的WP-MU安裝轉移。我安裝了正在工作的GAE插件,但提到我也應該安裝batcache和memcached插件。所以我安裝了他們兩個,但他們似乎並沒有工作 - 我在<head>部分沒有調試輸出,響應是200,網站一般很慢。我能做些什麼來啓用緩存?這裏有2後重新加載的響應報頭與curl -i爲什麼我的GAE上的wordpress網站沒有被緩存?

HTTP/1.1 200 OK 
Vary: Cookie 
X-Pingback: http://www.websiteinquestion.com/xmlrpc.php 
Content-type: text/html; charset=UTF-8 
Vary: Accept-Encoding 
Date: Sun, 09 Feb 2014 23:20:32 GMT 
Server: Google Frontend 
Cache-Control: private 
Alternate-Protocol: 80:quic,80:quic 
Transfer-Encoding: chunked 

有一些調試輸出使能時:

Notice: Undefined offset: 1 in /base/data/home/apps/s~xxx/xxx.stringofnumbers/wordpress/wp-content/object-cache.php on line 374 

這裏是app.yaml的

application: xxxxx 
version: xxx 
runtime: php 
threadsafe: no 
default_expiration: "2d" 
api_version: 1 
instance_class: F1 
automatic_scaling: 
    min_idle_instances: 0 
    max_idle_instances: 1 
    min_pending_latency: automatic 
    max_pending_latency: 15000ms 

在WP-配置.php我加了

define('WP_CACHE', true); 

我試着查看GAE控制檯上的memcache統計信息,但是我無法在任何地方找到查看器。在設置中,memcache被設置爲共享模式。

+0

查看器在管理控制檯中,數據下的最後一項是'memcache viewer' –

+0

謝謝s,我發現它 - 我在看cloud.google.com,但應該看看appengine.google.com 悲傷的部分是緩存似乎工作(儘管插件仍然不輸出任何東西),但該網站仍然慢。 – Spikolynn

回答

0

在管理中禁用RSS小部件後,網站正在緩存正確。

+0

我有同樣的問題,但我找不到任何RSS小部件禁用...在我正在使用的主題中,默認情況下頁面上有RSS源的鏈接,但在管理員中沒有活動的RSS小部件被發現... –

3

就我而言,Google設計的batcache配置是導致問題的原因。在上https://developers.google.com/appengine/articles/wordpress提供的說明,它說:

在你的wp-config.php文件,添加以下行的文件的末尾:

$batcache = [ 
    'seconds'=>0, 
    'max_age'=>30*60, // 30 minutes 
    'debug'=>false 
]; 

如果你這樣做,你會得到一個警告:

警告:call_user_func_array()預計參數1是一個有效的回調 ,第一個數組成員不是一個有效的類名或對象 /Users/per/google-cloud/appocentric-wordpress/wordpress/wp-includes/plugin.php 上線199

但是,如果移動batcache配置線,只是讀取

前行

/*就這些,停止編輯!開心博客。 */

在wp-config中,它的工作原理!所以,相信WordPress的傢伙,而不是谷歌,在這種情況下...

===============

我也找到了解決的未定義偏移您所描述的問題(來源http://wordpress.org/support/topic/fix-for-notice-undefined-offset-1)。

Memcached Memcached插件版本2.0。2給出了以下錯誤消息:

Notice: Undefined offset: 1 in /var/www/html/wp-content/object-cache.php on line 374 

這導致從僅具有無端口列爲默認服務器:

array(1) { [0]=> string(9) "127.0.0.1" } 

沒有列出來填充線374的端口變量得到的端口在未定義的抵消通知中。這裏是線374:

list ($node, $port) = explode(':', $server); 

的解決方案是從修改線365:

$buckets = array('127.0.0.1'); 

到:

$buckets = array('127.0.0.1:11211'); 

這已被固定在源和將在以後的版本中可用> 2.0.2

相關問題