标签: http

在临时站点中断/停机期间,我应该返回什么 HTTP 状态?

我将关闭我的网站以升级代码。我想在升级过程中显示临时停机页面。为了防止机器人在停机期间尝试爬取我的网站,我应该确保在此窗口期间返回什么 HTTP 响应?

http outage apache-2.2

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

Nginx 代理缓存 - 如何检查它是否正常工作?

我已经设置了我的 nginx.conf 文件以使用我在网上找到的教程中的代理缓存。现在我想弄清楚如何检查它是否真的有效。

我在某处读到添加add_header X-Cache-Status $upstream_cache_status;到服务器部分的配置文件应该向响应添加一个缓存标头,该标头将显示它是否来自缓存(具有 HIT、MISS 或 EXPIRED 的值)。

我想知道我在哪里可以实际查看此标题(及其值),以及这是否是正确的方式/是否还有另一种方式。总的来说,我对网络技术很陌生,如果这是一个菜鸟问题,我很抱歉。谢谢!

http nginx http-headers

13
推荐指数
1
解决办法
2万
查看次数

为什么我无法登录到服务器上受 Windows 保护的 IIS 7.5 目录?

我有一个带有 admin 子目录的网站,该目录受集成的 Windows 身份验证保护。从远程 PC 完美运行。但是当我尝试访问服务器本身上的这些页面时,我遇到了授权失败。我使用的是正确的主机名,而不是 localhost。试过 Chrome 和 IE,结果一样。

有什么建议?

windows-server-2008 http authentication iis-7.5

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

http 代码 206(部分内容)的真正含义是什么?

我正在构建一个页面(使用 video.js,如果重要的话)可以容纳相当多视频的播放器——单击图像缩略图上的按钮,一个模式播放器打开,播放视频。工作正常; 没什么大不了。我的服务器是 Apache 2.2.15,fwiw。

问题:当我查看服务器日志时,我看到每个视频的条目的 HTTP 代码为 206(部分内容),例如:

GET /videos/a_video.mp4 HTTP/1.1" 206 1130496 "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.73.11 (KHTML, like Gecko) Version/7.0.1 Safari/537.73.11"
Run Code Online (Sandbox Code Playgroud)

我不确定这些条目的确切含义。当这个页面加载时,1.1 MB 的内容是否真的通过网络推送到客户端,或者这只是当/如果用户真正请求文件时客户端打算使用的信息?将所有这些东西转储到用户/客户端对某人的带宽(更不用说我的站点)来说是一件非常吝啬的事情,尤其是在移动连接上。(基于一些额外的日志分析,看起来这些位真的被推送了,但是与其他更有知识的人一起检查这肯定是正确的做法......)

http http-status-code apache-2.2

13
推荐指数
1
解决办法
4万
查看次数

使用 404 页面监控 http 状态

我正在尝试使用 404 或 403 页面监视 HTTP 状态。众所周知,Monit 将这些页面视为连接失败,但我该如何更改。我只想监控它是否显示 404 或 403 页面。

如果可能的话,我需要用这个配置检查它。

这是我的检查配置:

check process httpd with pidfile /var/run/httpd.pid
  start program = "/etc/init.d/httpd start"
  stop program = "/etc/init.d/httpd stop"
    if failed host hostname port 80
    protocol HTTP request "/"
    then exec "/bin/bash -c '/bin/echo -e "hostname\thttpd\t3\tFAILED" | /usr/sbin/send_nsca -H nagiosserver -c /etc/send_nsca.cfg; /usr/bin/monit restart nginx;'"
Run Code Online (Sandbox Code Playgroud)

http monit

13
推荐指数
2
解决办法
1万
查看次数

nginx: [emerg] 未知指令“http”

当我尝试编写这样的代码时:

1. http {
2.    script
3.    server {
4.        ...
5.        location ...
6.    }
7. }
Run Code Online (Sandbox Code Playgroud)

我得到错误:

nginx: [emerg] unknown directive "http" in /etc/nginx/conf.d/nginx.conf:1
Run Code Online (Sandbox Code Playgroud)

当代码是这样的:

1. server {
2.     ...
3.     location ...
4.     script
5. }
6. server {
7.     ...
8.     location ....
9.     script
10. }
Run Code Online (Sandbox Code Playgroud)

……一切都稳定了。有人知道为什么我不能使用http吗?

我在每一个善用的例子中都看到了http,但是由于这个错误我不能善用它。

nginx: nginx version: nginx/1.0.10
nginx: TLS SNI support enabled
nginx: configure arguments: --prefix=/etc/nginx/ --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx …
Run Code Online (Sandbox Code Playgroud)

http nginx

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

Apache AB (ApacheBench):-no-check-certificate 选项可用吗?

似乎没有办法避免这个错误:“验证返回代码:20(无法获得本地颁发者证书)”。有没有办法避免使用 AB 进行发行人 ssl 检查(例如 wget 的 -no-check-certificate 选项)

提前致谢

ssl http ab apache-2.2 benchmark

12
推荐指数
1
解决办法
2万
查看次数

CDN:我的 DNS 怎么可能根据访问者的位置提供不同的 IP?

我找到了 CDN 工作原理的解释。但是有一件事我真的不明白。假设在我的位置我设置多个DNS服务器和他们所使用的域名服务器的域dns1.example.comdns2.example.comdns3.example.com。该 DNS 服务器能够根据访问者的位置(ping、地理数据库、浏览器语言或其他任何内容)提供服务器 IP。现在我www.example.org在注册表中为我的域更新此名称服务器设置。

现在,第www.example.org一个使用过期 TTL 的请求尝试解析域。它问:

  1. 本地 .hosts/DNS,如果 TTL 过期:
  2. 互联网提供商的 DNS,如果 TTL 过期:
  3. 根 DNS,如果 TTL 过期:
  4. 我的本地人 dns1.example.com

但是,如果我理解正确,那么新 IP 将添加到所有这些名称服务器缓存中,直到 TTL 再次过期。那么如何根据访问者的位置将其他 IP 发送给访问者呢?

这个答案中, theandym 说请求是“转发”的,但我认为这不是 CDN 的工作方式,因为“转发”意味着延长传输方式,导致加载时间更长。或者 CDN 是否要求域的 TTL 为零?

Update1
通过这个问题,我找到了谷歌的文档,描述了他们如何优化 CDN 性能。它没有解释 CDN 一般是如何工作的,但有一些有趣的解释,如下所示:

此后,每当客户端尝试获取托管在 CDN 上的内容时,客户端都会被重定向到确定其前缀具有最小延迟的节点。但是,此重定向基于与 DNS 名称服务器的 IP 地址相对应的前缀,该服务器代表客户端解析内容的 URL,通常与客户端位于同一位置。

这意味着 Google 首先会检查所有 IP 前缀的延迟,并为所有可用前缀定义 DNS 解析表 (?)。如果访问者拥有 IP 198.51.100.231 …

domain-name-system http cdn nameserver

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

Puppet 文件源可以来自 Web 服务吗?

有没有一种(简单的)方法让 puppet 使用 Internet 上可用的文件作为文件的 Source 属性?

例如:

file { "/home/text.txt":
  source => [
    "http://www.example.com/text.txt",
  ]
}
Run Code Online (Sandbox Code Playgroud)

http puppet puppetmaster puppet-dashboard

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

如何在同一站点上为 http 和 https 提供不同的 robots.txt?

我有一个由 Apache 提供服务的小站点(我不能将 Nginx 放在前面,也不能将 Apache 更改为任何内容),并且它被设置为通过 http 和 https 为同一个站点提供服务(没有重定向 http->https,所以到目前为止,因此 http 和 https 版本都是并行提供的)。

我需要的是.htaccess通过 http 和 https设置相同的 URI 来提供不同的文本文件?

就像http://example.com/proto.txt说“该站点通过 http”而https://example.com/proto.txt会说“该站点通过 https 提供服务”。

http https htpasswd apache-2.4

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