Questions tagged «http-headers»

HTTP标头字段是超文本传输​​协议(HTTP)中请求和响应的消息标头的组成部分。它们定义HTTP事务的操作参数。

1
当文件是PHP时,mod_headers不发送头文件
我将.htaccess文件设置为以下内容: Header set MyHeader "I'm Set!" 如果转到http://example.com/test/没有默认索引文件的目录(),并查看网络活动(在本例中为Chrome),则可以看到正在发送标头。如果我转到php文件(http://example.com/test/test.php),则不会发送标头。 我创建了一个index.html(仅<pre>Hi作为内容)并将其发送。我将文件名更改为.php,没有标题。如果我将orignal更改test.php为test.html,则会输出看起来很垃圾的代码,并发送标头。如果更改test.php为test.png,则会得到一个损坏的图像图标,并且将发送标题。 因此,如果没有对mime类型和文件扩展名进行以上测试,则似乎只有.php文件(合法或其他)设置为不应用.htaccess规则,或者特别是mod_headers指令。但是我不知道如何测试,因为它是一台共享服务器,所以我无权httpd.conf访问。 关于为什么Apache会跳过发送PHP文件头的任何想法? 我也尝试过: <FilesMatch "\.(php)$"> Header set MyHeader "I'm Set!" </FilesMatch>


11
.htaccess无法正确重定向到www前缀的页面
我正在尝试不使用www重定向网址。到www.version(从example.com到www.example.com)。我用平常的 RewriteCond %{HTTP_HOST} ^example\.com [nc] RewriteRule (.*) http://www.example.com/$1 [R=301,L] 这适用于我所有其他项目。但是,在此特定站点上,它以重定向循环结尾。这是一个很奇怪的部分:我试图卷曲非www版本,以查看它使用了什么标题 curl --get http://example.com --dump-header domain.header > domain.html。头文件如下所示: HTTP/1.1 301 Moved Permanently Date: Mon, 06 Jun 2011 14:45:16 GMT Server: Apache/2.2.16 (Debian) Location: http://example.com/ Vary: Accept-Encoding Content-Length: 310 Content-Type: text/html; charset=iso-8859-1 但是,生成的HTML文件是这样的: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>301 Moved …

4
如何为apache和nginx服务的所有404页添加无缓存标题?
切换到Cloudflare后,我最近遇到了一个问题,解决方案是基本上停止Cloudflare缓存404响应。 在我们的负载均衡的多服务器设置中,偶尔会出现404错误,但它们会通过rsync(通过lsyncd)快速修复。在Cloudflare之前,随着rsync的工作,对404ed文件的重新请求很快就会变成200。 但是,由于Cloudflare基于缓存标头缓存所有数据,而apache和nginx均未发送404的不缓存标头,因此Cloudflare最终将404响应缓存了一段时间。 我一直在寻找一种解决方案,以便在apache和nginx中(全局地,对于所有托管域)为404s全局添加这样的标头,但到目前为止,它还是空白。 有人可以帮忙吗? 谢谢。

1
向ProxyPass请求添加自定义标头
我有一个简单的Apache虚拟主机: <VirtualHost *:80> ServerName hello.local ProxyPass / http://localhost:8810/ ProxyPassReverse / http://localhost:8810/ </VirtualHost> 对hello.local的所有请求都代理到http://localhost:8810/。我想做的是向http://localhost:8810/带有外部命令返回值的http请求添加标头。就像是 Header set MyHeader ${/usr/bin/an_external_program} 有什么办法可以做到这一点?

4
是否可以根据IP地址投放特定页面?
我一直是对我拥有的两个WordPress网站进行暴力攻击的目标。攻击者正在使用老式的XML-RPC来放大暴力密码攻击。幸运的是,我们有非常好的密码生成,所以我非常怀疑他会不会得到任何保护。 每当他再次弹出(总是从同一个虚拟云提供商)时,我就一直使用iptables阻止他的请求,但是我宁愿修改服务器,以便每当他的IP地址请求任何页面时,他都会得到一个响应,告诉他获得生命。大多数请求都是POST,因此理想情况下,我只想修改响应标头,使其包含“下次更好运!”之类的内容。或同样令人满意的东西。 这可能吗?我离Apache专家还很远,所以我不确定这将很难实现。但是即使花了我几个小时,满足感也将是无价的。 作为参考,我正在运行Ubuntu 16.04.2 LTS,Apache 2.4.18托管了Wordpress 4.7.3。

3
如何更改nginx上的Last-Modified标头?
我的服务器返回以下标头: Cache-Control:no-cache Connection:keep-alive Date:Thu, 07 Jul 2011 10:41:57 GMT Expires:Thu, 01 Jan 1970 00:00:01 GMT Last-Modified:Thu, 07 Jul 2011 08:06:32 GMT Server:nginx/0.8.46` 我希望不缓存我所服务的内容,因此我正在寻找一种方法来返回包含请求发起日期的日期时间的Last-Modified标头。类似于now()...

2
如何在文件中的Apache中发送Content-Disposition标头?
我有一个文本文件目录,我正在用Apache 2提供这些文件。通常,当我(或任何用户)访问文件时,他们会在浏览器中看到它们。我想“强制” * Web浏览器弹出“另存为”对话框。我知道这可能与Content-Disposition标头(更多信息)有关。 有没有办法为每个文件打开它? 理想情况下,我想要这样的东西: <Directory textfiles> AutoAddContentDispositionHeaders On </Directory> 然后,Apache将设置正确的内容处理标头,包括使用相同的文件名。 使用apache Header指令可能会发生这种情况。 奖励积分(如果包括在debian中的apache中包含在内)。 我可以做一个简单的PHP包装脚本,该脚本接受一个filename参数,进行调用header(...),然后打印该文件,但随后我必须对输入的validatedate等。这是我要避免的工作。 *我知道当涉及到网络时,您实际上无法强制执行任何操作
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.