![](/img/trans.png)
[英]How to connect to MSSQL Server with PHP from Ubuntu 18.04?
[英]How to connect separate memcache server on Ubuntu and Use from other server?
我在新加坡地区的Digitalocean单独服务器上托管了基于LAMP的PHP和MySql Web应用程序。 一台PHP服务器+一台远程MySql DB服务器,都可以正常工作。 因为该应用程序必须读取的内容要比写入的更多,所以我想添加一台内存缓存服务器。
到目前为止,我已经尝试过:-在2gb的小滴上使用本教程中的这些步骤。
现在,我有一台具有公共ip:129.xxx
和私有ip:10.xxx
内存缓存服务器,
1-p 11211
2.米2048
3.-c 1024
4.-l 127.0.0.1
memcached服务器已成功安装测试数据并将其缓存在本地主机上。 但是我想在其他远程Web服务器上使用它,
因此,我将memcached.conf
文件-l 127.0.0.1
更改为此memcached服务器专用IP -l 10.xxx
。
现在,当我检查memcached服务器并键入ps aux | grep memcached
ps aux | grep memcached
显示:
tcp 0 0 10.x.x.x:11211 *:* LISTEN 3742/memcached
当我检查统计信息时, echo "stats settings" | nc 10.xxx 11211
echo "stats settings" | nc 10.xxx 11211
它显示有关memcached服务器的所有信息,并且它正在运行。
为了进行测试,我制作了一个文件test.php
并保存在PHP服务器上并尝试连接。
<?php
$mc = new Memcached();
$mc->addServer("**10.x.x.x**", 11211);
$result = $mc->get("test_key");
if($result) {
echo $result;
} else {
echo "No data on Cache. Please refresh.";
$mc->set("test_key", "test data from Cache!") or die ("Failed to save data at Memcached server");
}
?>
但是它始终显示HTTP ERROR 500
错误页面,PHP服务器上的“页面无法正常工作”错误, 192.xxx is currently unable to handle this request
但是我的其他PHP和MySql应用程序在同一服务器上运行。
相同的代码正在memcached服务器上运行并成功缓存数据,但在远程PHP服务器上无法正常工作。
当我尝试telnet 10.xxx 11211
成功连接时, sudo iptables -L
在任何地方输出该INPUT策略ACCEPT。
我已经尝试了很多谷歌搜索,但没有任何帮助。
检查Web服务器错误日志后,显示Class 'Memcached' not found
。 我必须在Web服务器中安装memcached php模块才能连接到远程memcached实例。 通过键入
apt-get install php5-memcached
并通过添加更改php.ini
extension = memcached.so
,
比php Web服务器开始连接到远程memcached服务器。 如果要对会话使用memcached,请打开php.ini文件并添加
session.save_handler = memcache session.save_path = 'tcp://10.xxx:11211'
,最后重启服务器。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.