编程语言
首页 > 编程语言> > php – mod_pagespeed为响应添加标记

php – mod_pagespeed为响应添加标记

作者:互联网

我在Apache 2.4中有一个简单的PHP应用程序和mod_pagespeed.

查看PageSpeed模块文档(https://developers.google.com/speed/pagespeed/module/filter-head-add),它说这会添加一个< head />如果遇到正文标记,则标记到文档.

问题是,我正在制作一个返回HTML表格行的AJAX请求,然后我将其附加到表格中.

mod_pagespeed之前的响应是:

<tr><td>Data1</td><td>Data2</td></tr>

我可以做一个:

$('#myTable > tbody:last-child').append(data);

它会工作正常.

现在响应是:

<head/><tr><td>Data1</td><td>Data2</td></tr>

而且它正在破裂.

我的问题是,这种情况一直在发生吗?我是否需要删除add_head指令?还有另一种方法让mod_pagespeed知道这是一个AJAX请求吗?

解决方法:

我认为您的响应具有text / html内容类型,因此mod_pagespeed假定它是一个缺少头标记的HTML文档.

尝试设置不同的内容类型(如text / plain):

header("Content-Type: text/plain");

或类似text / ajaxresponse的完整组合

header("Content-Type: text/ajaxresponse");

在普通浏览器中也将被视为纯文本.现在mod_pagespeed不再将您的响应视为完整的HTML文档,因此将不再插入head标记.

由于Ajax请求的内容类型不固定,因此“Ajax响应”的特殊内容类型标头不存在.如果您的响应是JSON,则可以使用application / json.

标签:jquery,php,ajax,mod-pagespeed
来源: https://codeday.me/bug/20190711/1433855.html