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