我正在遵循Nginx docx 中的示例配置。反向代理工作正常,只是它不缓存结果。
这是我的 nginx.conf:
user http http;
worker_processes 1;
events {
worker_connections 1024;
}
http {
proxy_cache_path /srv/http/my.site/cache levels=1:2 keys_zone=STATIC:10m inactive=24h max_size=1000m;
proxy_temp_path /srv/http/my.site/tmp;
server {
listen 8081;
server_name my.site remote.host;
location / {
proxy_pass http://remote.host;
proxy_cache STATIC;
proxy_cache_valid 200 302 1d;
proxy_cache_valid 404 1m;
}
}
}
Run Code Online (Sandbox Code Playgroud)
据我所知,文件夹权限是可以的:
ls -l /srv/http/my.site/
total 8
drwxr-xr-x 2 http http 4096 Dec 21 04:24 cache
drwxr-xr-x 2 http http 4096 Dec 21 04:24 tmp
Run Code Online (Sandbox Code Playgroud) 对于小型家庭网络——两台笔记本电脑、两台台式机和主服务器——我应该期待通过在主服务器上运行 Squid 获得多少收益?我完全理解为小型家庭网络运行缓存名称服务器的价值,但我不确定运行 HTTP 缓存代理是否有任何价值。
主服务器对网络上的所有其他计算机进行完整的 NAT,以防万一。
我找到了有关如何防止鱿鱼缓存域/IP 地址的信息,但是,这并不是我想要的。我想阻止它缓存.jnlp和.jar文件。
核心问题是,当我将更新推送到我们的服务器时,我们在鱿鱼代理后面的用户可能几天都无法获得更新的版本(显然鱿鱼需要很长时间才能确定文件已更改)。也许我错过了一个更简单的解决方案?
有没有其他人遇到过这个问题?
通过远程桌面连接浏览资源管理器中的文件夹时,有时文件名字符串会损坏,因此它们在 Windows 资源管理器中显示不正确。
远程桌面(或终端服务)必须有某种字符串图形缓存,它几乎随机损坏特定字符串,尤其是 Windows 资源管理器中的文件名。
我无法按需重现错误,但是一旦发生错误,您可以复制文件名字符串并将其粘贴到资源管理器中的其他位置,例如地址栏、“运行”对话框等......字符串也会在那里损坏。如果您手动输入字符串,即使您输入字符串的第一部分,最后一部分,并通过添加最后一个字符完成...最终结果,它也会在添加最后一个字符后立即损坏是一旦损坏的字符串被重新建立,视觉显示是错误的(它变成空白,或者有错误的字符)。
这纯粹是视觉缺陷。我仍然可以编辑字符串。如果我删除一个字符,整个字符串显示正常(因为它是一个不同的字符串)。如果我添加一个不同的字符,它也显示得很好,但是一旦我添加了原始字符,恢复原始(损坏的)字符串,字符串的显示要么是空白的,要么是乱码的。
这可以报告给谁..这显然是一个令人讨厌的错误。
编辑:损坏的字符串似乎通过替换为文件属性对话框中的字符串(例如 ID 字符串、“权限”或“允许”之类的词以及文件路径)而在视觉上显现出来;也许该错误与显示文件属性窗口有关。
编辑:在下面添加了图像。如果我调整分隔符的大小,字符串会改变(它们以“...”结尾,所以它是一个不同的、未损坏的字符串,显示正常。实际上,你甚至无法从远程内部将其捕获为全屏图像桌面,因为它没有显示故障!只有通过将远程桌面窗口恢复到窗口化状态,并在远程桌面窗口打开的情况下拍摄客户端桌面的图片才能看到这种损坏......所以也许它是一个客户端字符串呈现问题。

我有一个以 varnish+nginx 为前端的 Ruby on Rails 应用程序。由于除非您是登录用户,否则大多数站点内容都是静态的,因此我想在用户注销时使用清漆大量缓存站点,但仅在用户登录时缓存静态资产。
当用户登录时,他们的 Cookie: 标头中会出现 cookie 'user_credentials',此外我需要跳过缓存 /login 和 /sessions 以便用户可以首先获得他们的 'user_credentials' cookie .
默认情况下,Rails 不会设置缓存友好的 Cache-control 标头,但是当用户未登录时,我的应用程序会设置一个“public,s-max-age=60”标头。Nginx 设置为返回“远未来”过期标头对于所有静态资产。
我目前的配置在登录时完全绕过缓存,包括静态资产 - 并在注销时为所有内容返回缓存 MISS。我花了几个小时绕圈子,这是我目前的 default.vcl
director rails_director round-robin {
{
.backend = {
.host = "xxx.xxx.xxx.xxx";
.port = "http";
.probe = {
.url = "/lbcheck/lbuptest";
.timeout = 0.3 s;
.window = 8;
.threshold = 3;
}
}
}
}
sub vcl_recv {
if (req.url ~ "^/login") {
pipe;
}
if (req.url ~ "^/sessions") {
pipe;
} …Run Code Online (Sandbox Code Playgroud) 硬盘缓存对IO性能有多大影响
是否有任何可用的统计数据或性能测试可以告诉我 16MB 与 32MB 缓存是否存在差异?
如果重要的话,我在看 SATAII 7200RPM 驱动器。
我对 Citrix 产品 NetScaler 感兴趣。这是您放置在网络服务器前面的应用程序。我喜欢的特点是:
有没有类似的产品有这样的功能?
接收错误:
[调试] mod_headers.c(663): headers: ap_headers_output_filter()
在我将其包含在.htaccess文件中之后:
# 6 DAYS
<FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$">
Header set Cache-Control "max-age=518400, public"
</FilesMatch>
# 2 DAYS
<FilesMatch "\.(xml|txt)$">
Header set Cache-Control "max-age=172800, public, must-revalidate"
</FilesMatch>
# 2 HOURS
<FilesMatch "\.(html|htm)$">
Header set Cache-Control "max-age=7200, must-revalidate"
</FilesMatch>
Run Code Online (Sandbox Code Playgroud)
对于我可以做些什么来解决这个问题,任何帮助表示赞赏?
我正在通过 Varnish 运行一些 Rails 应用程序,以提供更好的缓存支持,这有望比 Rails 中的页面缓存选项更灵活。
我偶然发现的一个问题是,当从应用程序服务器返回 HTTP/50x 错误时,varnish 不会提供自定义错误页面(例如,当 Rails 应用程序引发异常时,我们会呈现自定义错误 HTML 模板) - 而不是看到'nice' 用户友好的错误页面,我们看到以下文字:
Error 503 Service Unavailable
Service Unavailable
Guru Meditation:
XID: 828451354
Varnish cache server
Run Code Online (Sandbox Code Playgroud)
有什么方法可以将获取的 HTML 从后端服务器传递给客户端吗?是否与实现 sub_error VCL 方法和使用 fetch 或 pass 指令一样简单?
谢谢。
我们有运行 nginx 7.65 和 fastcgi PHP5 的网络服务器,并且正在研究缓存的可能性,以加快内容交付和降低系统负载。服务器运行不同的(自定义)应用程序。
缓存的选项太多了,我不确定什么是合理的设置。有memcached、APC、Nginx的fastcgi_cache、proxy_cache....
我知道 memcached 具有分布式能力作为奖励,但我们目前不需要它。根据我的经验,如果将 memcached 安装在它所服务的同一台机器上,它的执行速度比 APC 慢,但这是一段时间以前的事了。
我不熟悉 Nginx fastcgi_cache 甚至常规的 proxy_cache 模块。它是可比的还是完全不同的?
对于 Nginx w,什么是好的、合理的缓存方法。FastCGI PHP5?
cache ×10
nginx ×2
proxy ×2
squid ×2
varnish ×2
.htaccess ×1
apache-2.2 ×1
citrix ×1
corruption ×1
explorer ×1
fastcgi ×1
hard-drive ×1
http ×1
http-proxy ×1
linux ×1
memcached ×1
netscaler ×1
performance ×1
php ×1
sata ×1
ssl ×1