小编stu*_*nti的帖子

nginx + ssi +远程uri访问不起作用

我有一个设置,我的nginx在apache + PHP后面.

我的PHP应用程序在memcache中缓存一些页面,这些页面由nginx直接访问,除了在Nginx中使用SSI构建的一些动态部分.

我遇到的第一个问题是nginx没有尝试使用memcache作为ssi URI.

<!--# include virtual="/myuser" -->
Run Code Online (Sandbox Code Playgroud)

所以我想如果我强迫它使用完整的URL,它就会这样做.

<!--# include virtual="http://www.example.com/myuser" -->
Run Code Online (Sandbox Code Playgroud)

但是在日志文件(包括nginx和apache)中,我可以看到在url的开头添加了斜杠

http ssi filter "/http://www.example.com/myuser"
Run Code Online (Sandbox Code Playgroud)

在SSI模块的源代码中,我看到一个似乎被添加的PREFIX,但我真的可以告诉我是否可以禁用它.

有谁有这个问题?Nginx版本:Ubuntu Karmic 64位上的0.7.62

非常感谢

nginx ssi

1
推荐指数
1
解决办法
4878
查看次数

使用多个服务器进行缓存

我正在构建一个涉及多个服务器的应用程序.(4台服务器,每台服务器都有一个数据库和一个网络服务器.1个主数据库和3个从属服务器+一个负载均衡器)

有几种方法可以启用缓存.现在它很简单,效率也不高.所有缓存都在所有服务器之间的NFS分区共享上完成.NFS是架构的瓶颈.

  1. 我有几个想法实现缓存.它可以在服务器级别(本地文件系统)上完成,但问题是当内容在所有服务器上更新时使缓存文件无效:它可以通过具有较小的缓存生存期来完成(效率不高,因为缓存将是它应该在大部分时间刷新
  2. 它也可以通过消息传递系统(例如XMPP)来完成,其中每个服务器相互通信.负责缓存失效的服务器向所有其他人发送请求,让他们知道缓存已经失效.延迟可能更大(需要更多时间让每个人都知道缓存已经失效)但我的应用程序不需要原子缓存失效.
  3. 第三种方法是使用云系统来存储缓存(如CouchDB),但我不知道这个的性能.它比使用SQL数据库更快吗?

我打算使用Zend Framework,但我认为它并不真正相关(除了某些包可能存在于其他框架中以处理XMPP,CouchDB)

要求:持久缓存(如果服务器重新启动,则不应丢失缓存以避免在重新创建缓存时关闭服务器)

caching couchdb xmpp

0
推荐指数
1
解决办法
1620
查看次数

标签 统计

caching ×1

couchdb ×1

nginx ×1

ssi ×1

xmpp ×1