标签: http-headers

即使我添加了它们,yslow仍然没有在apache httpd中给我一个A for expires标头

尝试将ExpiresDefault ExpiresByType添加到我的网站上的内容,以便缓存它.我在Javascript,CSS和图像的URL(路径中的修订号)中使用cachebusting,这样我就可以将这些mimetypes设置为永久.我在apache httpd中设置了以下规则:

  ExpiresActive On
  ExpiresDefault "access plus 1 minutes"
  ExpiresByType image/gif "access plus 10 years"
  ExpiresByType image/png "access plus 10 years"
  ExpiresByType image/jpeg "access plus 10 years"
  ExpiresByType image/jpg "access plus 10 years"
  ExpiresByType text/javascript "access plus 10 years"
  ExpiresByType text/css "access plus 10 years"
Run Code Online (Sandbox Code Playgroud)

然后,当我访问我的网站http://karmerd.com并使用httplive标题来查看标题时,我得到了我认为应该是正确的exps for css:Expires:Sun,03 Feb 2019 17:52:48 GMT

但我使用雅虎的Yslow firebug扩展,它仍然给我一个不使用Expires的F!难道我做错了什么?我也在我的网站上使用gravatars,但他们有Expires设置.好像一切都过期了.是Yslow还是我?

apache yslow mod-expires http-headers

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

将用户从旧网站重定向到新网站时,检测是否向其显示自定义欢迎消息的最佳方法是什么?

假设您在旧代码库上运行的旧网站提供某些功能.后继网站已启动并运行,提供所有旧功能和更多功能.有一段时间,旧网站上有一个指向新网站的HTML链接,供那些关心点击的用户使用.

现在,旧网站已达到使用寿命,您希望自动将用户重定向到新网站,例如通过301或302重定向.但是,当用户遇到此重定向时,您还希望在新站点上显示友好消息,欢迎他们并解释他们为什么没有看到旧版本.

当用户单击HTML链接时,将填充HTTP_REFERER标头,并且可以通过该值触发欢迎消息.但是,使用3XX重定向代码时似乎不是这样.

针对此问题的Google热门话题有:"HTTP 1.1规范明确说明:如果给出了3XX代码,则不会传递任何Referer值.(最终,指向3XX站点的URL)." (http://www.usenet-forums.com/apache-web-server/37811-how-set-referer-redirect.html#post145986)

但是我在快速阅读规范(http://tools.ietf.org/html/rfc2616)中找不到这个陈述.

任何人都可以建议实现此功能的正确方法吗?

注意:这并不是一个包罗万象的解决方案.我们知道有些客户端甚至不会出于隐私原因发送HTTP_REFERER标头,但为了争论,让我们忽略该用例.

html apache http http-headers

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

为什么livehttpheaders显示我的登录名和密码,我该如何防止它?

我正在查看Firefoxlivehttpheaders插件,并决定测试我的登录页面.我注意到它里面显示的参数包含我的登录名和密码.例如:

username=sarmenhb&password=thepassword&submit=Login
Run Code Online (Sandbox Code Playgroud)

用简单的英语.

我没有在其他网站上看到这个.

我能做错什么?我认为这是一个安全漏洞.登录页面,只需验证并登录用户即可.所有字段都经过mysql_real_escape_string(如果相关).

php security http-headers

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

什么是expire头以及如何在ASP.NET和PHP中实现它们?

今天我用YSlow检查了我网站的性能统计数据.我收到了警告(或可能是错误),如下所示

Add Expires headers
There are 15 static components without a far-future expiration date.

    * (no expires) http://www.example.com/video/css/global.css
    * (no expires) http://www.example.com/video/js/global.js
    * (no expires) http://www.example.com/video/images/main-bg.png
Run Code Online (Sandbox Code Playgroud)

这意味着什么以及如何在PHP和ASP.NET中实现这一点.我在共享托管服务器上,所以请告诉我一些使用代码执行此操作的方法,因为我无法在服务器端进行任何修改.

如果我将使标题过期,那么有可能如果我在CSS中进行更改,那么用户将无法立即获取它们,因为css和其他文件被缓存一段时间限制(1个月,一周).是吗?

使用expire头是否有任何缺点?

php asp.net performance yslow http-headers

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

PHP脚本不接收HTTP Post字段

我觉得这个问题很愚蠢,但我已经和它摔跤了好几个小时,我不知道还有什么地方可以转.

我有一个flash表单,它正在向php脚本发出POST请求,然后显示所述脚本的输出.为简单起见,我们假设这是php脚本:

echo 'Mail sent to: ' . $_POST['recipientEmail'];
Run Code Online (Sandbox Code Playgroud)

当我提交表单时,我在POST请求行中的Firebug的网络选项卡中看到了这一点:

Referer: http://example.com/my.swf
Content-type: text/html
Content-length: 68

recipientEmail=example@example.com
Run Code Online (Sandbox Code Playgroud)

表面上一切都很好.帖子已经发布,它将正确的变量发送到脚本.但是当响应回来时,这就是我在Flash跟踪器中看到的:

Mail sent to: 
Run Code Online (Sandbox Code Playgroud)

换句话说,$ _POST ['recipientEmail']在请求退出浏览器后丢失了.

你觉得这里发生了什么?脚本和swf文件都在同一个域中,服务器相同.

编辑:我刚尝试从HTML表单中访问相同的脚本,它捕获$ _POST标头.所以它只是在它被Flash发送时才捕获它.Firebug中的post标签看起来与flash有点不同:

recipientEmail  example@example.com
submit          Submit
Run Code Online (Sandbox Code Playgroud)

请注意,每个变量都在自己的行中.

编辑:这是提交提交的相关AS3代码:

    var _gateway:String = Share.getGateway();
    var request:URLRequest;
    var variables:URLVariables = new URLVariables();
    var loader:URLLoader = new URLLoader();     

    request  = new URLRequest(_gateway);
    request.contentType = 'text/html';
    request.method = URLRequestMethod.POST;


    variables.senderName = senderName.text;
    variables.recipientEmail = recipientEmail.text;
    variables.senderMessage = senderMessage.text;

    request.data = variables;

    try {
                 loader.load(request);
    }catch (error:Error) {
         Debug.trace("Unable to load …
Run Code Online (Sandbox Code Playgroud)

php flash post actionscript-3 http-headers

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

Python中的httplib获取状态代码......但是它太棘手了?

>>> import httplib
>>> conn = httplib.HTTPConnection("www.google.com")
>>> conn.request("HEAD", "/index.html")
>>> res = conn.getresponse()
>>> print res.status, res.reason
200 OK
Run Code Online (Sandbox Code Playgroud)

此代码将获取HTTP状态代码.但请注意,我在2行上拆分了"google.com"和"/index.html".

而且令人困惑.

如果我想找到一般URL的状态代码怎么办?

http://mydomain.com/sunny/boo.avi
http://anotherdomain.com/podcast.mp3
http://anotherdomain.com/rss/fee.xml
Run Code Online (Sandbox Code Playgroud)

我不能只是将URL粘贴到它,并让它工作?

编辑...我不能使用urllib,因为我不想下载文件

python regex http http-headers

0
推荐指数
2
解决办法
2284
查看次数

重定向到404页面

我在PHP脚本中有以下代码:

<?php

if (!in_array(@$_SERVER['REMOTE_ADDR'], array('127.0.0.1', '::1')))
{
    die('You are not allowed to access this file. Check '.basename(__FILE__).' for more information.');
}

// Other statements follow here
echo 'Hello there ...'
Run Code Online (Sandbox Code Playgroud)

而不是回显消息,我想将用户重定向到404页面.但是,当我用这个替换die()语句时:

header("HTTP/1.0 404 Not Found");

从远程计算机运行脚本的用户可以看到消息"Hello there ..."

如何让页面重定向到404页面以获取脚本的非localhost请求?

顺便说一句,这段代码来自Symfony框架中的开环环境前端控制器.

php symfony1 http-headers

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

PHP生成的XML无法在IE中下载

我有一个PHP脚本生成的XML提要,运行mod_rewrite.IE打开提要确定但我无法将文件保存到磁盘或导入到Excel.

我试图在网址中访问的文件类似于:

http://domain.com/download/export.xml
Run Code Online (Sandbox Code Playgroud)

这将写入下载PHP脚本,实际上不是XML文件.

设置如下所示的标题后,仍然无法让IE保存文件.此外,由于它无法显示普通源,因此IE会对XML进行各种样式更改,因此无法复制并粘贴到记事本中.

<?php
header("Content-type: text/xml");
header('Content-Disposition: attachment; filename="QuoteExport_'.$quoteDate.'_'.$quoteSlot.'.xml"');
Run Code Online (Sandbox Code Playgroud)

有谁知道解决方案?谢谢.

编辑:感谢您的帮助到目前为止.我尝试了这些标题的组合,仍然没有得到我想要的结果.无论我设置什么,IE总是在浏览器中在线显示,无法下载.保存功能也仍然无法正常工作.任何其他想法如何强制IE使用标头将XML保存为文件?

编辑2:状态现在是IE提供打开/保存的选项,但在尝试保存时,有一个弹出窗口说它"无法打开这个网站.".但与此同时,open选项显示内容没有问题.

php xml http-headers

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

HTTP和HTTPS标头有什么区别?

你能解释一下http header和https header之间的区别.我需要非常简短的解释.我们将使用http/https标题做什么?

谢谢

https http http-headers

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

什么是HTTP标头?什么是charset?

我是编码世界的新手,也是PHP和XHTML的新手.我只是详细介绍了meta标签,并且不了解属性http-equiv,也不了解charset的用途以及UTF-8所指的值<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />.

xhtml character-encoding http-headers

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