2
A
回答
2
你必須編輯在站點根文件夾中的configuration.php文件,並添加服務器的詳細信息。查找緩存可變因素$caching, $cache_handler, $memcache_server_host, $memcache_server_port.
將它們設置如下
public $caching = '2';
public $cache_handler = 'memcache';
public $memcache_server_host = 'localhost';//Give your memcache server address
public $memcache_server_port = '11111'; //Memcache server port
在庫/的Joomla /緩存/存儲/ memcache.php文件,我發現這個線
/*
* This will be an array of loveliness
***@todo: multiple servers***
* $servers = (isset($params['servers'])) ? $params['servers'] : array();
*/
當你想要添加兩個不同的memcache服務器,您可以看到它仍在開發中。但是有一種方法---通過黑客入侵核心文件。
不要試圖下面給出生產環境的方法
雖然這是危險的核心文件的播放,但你可以通過下面的,我現在建議的方法在自己承擔風險。先備份備份。取得文件(configuration.php和庫/ joomla/cache/storage/memcache.php和libraries \ vendor \ joomla \ session \ Joomla \ Session \ Storage \ Memcache.php)的備份。在該文件中對這個代碼的內存緩存文件搜索
$server['host'] = $config->get('memcache_server_host', 'localhost');
$server['port'] = $config->get('memcache_server_port', 11211);
// Create the memcache connection
self::$_db = new Memcache;
self::$_db->addServer($server['host'], $server['port'], $this->_persistent);
$memcachetest = @self::$_db->connect($server['host'], $server['port']);
if ($memcachetest == false)
{
throw new RuntimeException('Could not connect to memcache server', 404);
}
添加以下
//Give second server details like this
$server['host2'] = $config->get('memcache_server_host2', 'localhost');
$server['port2'] = $config->get('memcache_server_port2', 11211);
// Create the memcache connection
self::$_db = new Memcache;
self::$_db->addServer($server['host2'], $server['port2'], $this->_persistent);
$memcachetest = @self::$_db->connect($server['host2'], $server['port2']);
if ($memcachetest == false)
{
throw new RuntimeException('Could not connect to memcache server', 404);
}
將此代碼的configuration.php文件中添加此行
public $memcache_server_host2 = 'localhost';//Give your second memcache server address
public $memcache_server_port2 = '11111'; //Memcache second server port
現在用於存儲您的會話必須編輯存儲會話緩存的文件
在文件庫\ vendor \ joomla \ sessio ñ\的Joomla \會議\存儲\ Memcache.php你會發現這些線
$this->_servers = array(
array(
'host' => isset($options['memcache_server_host']) ? $options['memcache_server_host'] : 'localhost',
'port' => isset($options['memcache_server_port']) ? $options['memcache_server_port'] : 11211
)
);
更改爲
$this->_servers = array(
array(
'host' => isset($options['memcache_server_host']) ? $options['memcache_server_host'] : 'localhost',
'port' => isset($options['memcache_server_port']) ? $options['memcache_server_port'] : 11211
),
array(
'host2' => isset($options['memcache_server_host2']) ? $options['memcache_server_host2'] : 'localhost',
'port2' => isset($options['memcache_server_port2']) ? $options['memcache_server_port2'] : 11211
)
);
相關問題
- 1. Laravel - 服務器無法設置緩存
- 2. 如何在Azure容器服務中設置AutoScaling Docker主機
- 3. 如何在tc服務器中設置樹緩存
- 4. 如何在本地主機服務器上設置數據庫?
- 5. 在Memcached的多個服務器上設置多個實例
- 6. 如何驗證多個主機緩存集羣設置
- 7. 設置服務器代碼從本地主機到服務器
- 8. 如何在Docker Swarm的全局服務中設置主機名
- 9. 設置主機名服務碼頭羣
- 10. 在虛擬主機中設置簡單的前往服務器
- 11. 如何在Joomla中正確設置緩存和壓縮
- 12. 服務器設置的項目與虛擬主機配置
- 13. 如何在CentOS中設置兩個虛擬主機?
- 14. Webstorm的內置Web服務器文件緩存設置?
- 15. Grunt服務器如何正確設置主機名和虛擬主機?
- 16. 如何爲Devise設置兩個主機配置?
- 17. 設置我的第一個Varnish緩存服務器
- 18. 正確設置一個簡單的服務器端緩存
- 19. 如何緩存masterpage設置?
- 20. 設置服務器
- 21. 設置服務器
- 22. 設置服務器
- 23. 如何設置Nginx在一臺機器上代理兩個服務?
- 24. 將服務容器的主機名設置爲主機的主機名
- 25. 如何在winform中設置緩存c#
- 26. 如何使用Java在GAE中設置網頁緩存設置?
- 27. 緩存設置
- 28. 緩存設置
- 29. 如何在Java中設置客戶機/服務器?
- 30. 如何在服務器上設置Solr?
我有兩個內存緩存服務器。我如何定義另一個主機和端口? – James
@詹姆斯我給了一些替代解決方案。希望這可以工作。 –
謝謝。似乎我需要等待來自Joomla的生產就緒代碼,因爲我需要將它用於生產環境。 – James