问题标签 [mod-headers]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4584 浏览

apache - 如何使用 mod_header 删除会话 cookie 的安全标志?

我的 Apache Tomcat 在通过 mod_jk 连接的 Apache httpd Web 服务器后面运行。

当浏览器请求 https 页面(而不是 http)作为其第一个会话请求时,Tomcat 会发送一个带有安全标志的会话 cookie,这使得用户登录的会话在以后的 http 页面中不可用。

如何使用 mod_header 删除会话 cookie 的安全标志?

我已经尝试在 web.xml 中添加一个选项,如下所示。

但是,它不起作用。我猜这个选项不会使 servlet 请求不安全,并且 Tomcat 会将安全标志放在会话 cookie 上,除非上下文的会话配置和 servlet 请求都不安全。

0 投票
2 回答
4383 浏览

apache - apache如何使用“Header set Set-Cookie expires="动态的

我使用 apache 作为负载均衡器和反向代理。对于会话粘性,我正在使用节点的路由创建一个 cookie。

如何expires将 cookie 中的值设置为从请求进入后的 X 分钟?

mod_headers的文档甚至Set-Cookie没有详细介绍,因此没有关于用于expires.

我尝试设置max-age但不幸的是 max-age 不适用于 IE 11,我们的许多客户都使用它。

mod_rewrite cookie的文档确实涵盖了如何在 cookie 中设置生命周期,这样我就可以使用这个丑陋的 mod_rewrite hack 让它工作,但我必须为每条路线做一个规则,因为它在我的<Proxy balancer://my_cluster>部分中不起作用:

关于如何完成的任何想法Header set Set-Cookie?谢谢!

0 投票
1 回答
2734 浏览

apache - RequestHeader 未在 htaccess 中的 RewriteRule 上设置

我的 htaccess 文件中的以下 RewriteRule 未设置请求标头。

我不认为 SOME 环境变量与它有任何关系,因为我也尝试了一个通用的标头值并且它也没有设置。我确实确保安装了 mod-headers。我正在我的 chrome 开发人员工具中寻找标题。它有可能不会出现在那里吗?

0 投票
0 回答
1569 浏览

apache - 使用 apache 和 php-fpm 根据重写条件设置主机头

情况:我正在使用 Apache 2.2 和 PHP-FPM(mod_fastcgi,PHP 5.4.37)运行服务器。我需要在内部将完整的 URL (如http://dev2.example.com/at/en重写为http://dev2-at.example.com/en ) 。两个 ServerAliases 都在同一个 vhost 上运行(所以,不需要 mod_proxy 吗?)。对于客户端,URL dev.example.com/at/en 应该在浏览器中仍然可见,而 dev2-at.example.com/en 在服务器端(内部)处理。

问题:经过网上的一番研究,我想出了以下配置来修改主机头:

mod_fastcgi.conf 看起来像:

这会导致 Host:dev2- php.fcgi .example.com 中的主机标头。我是否必须以某种方式绕过 php-fpm 的标头?还是一般有更流畅的方法来解决这个问题?

0 投票
1 回答
1723 浏览

.htaccess - 在 Yslow 上添加 Expires 标头没有任何效果

我在服务器上启用了 mod_expires 和 mod_headers,并在 htaccess 中启用了此代码:

在 Google pagespeed 的 GTmatrix 中,我有 100%,但在 Yslow 上,“添加过期标题”为 0。我已经尝试了一切,但似乎无法让 Yslow 工作。有人可以帮忙吗?谢谢。

0 投票
2 回答
584 浏览

wordpress - 是否可以使用 htaccess 检查用户 admin

如果用户是像 current_user_can('administrator') 这样的管理员,我想发送无缓存标头

所以浏览器不会缓存一些资源。(为了防止每次都按 ctrl + f5 )

近解决方案也欢迎。

在搜索过程中我发现

是否可以使用上述方法发送无缓存标头?

0 投票
1 回答
3720 浏览

php - Apache 不会为 PHP 脚本设置标头

这个.htaccess文件:

...在我的开发框(Windows 框,Apache/2.4.10,PHP 作为 Apache 模块运行)中按预期工作,其中“工作”意味着它为所有资源(静态或动态)生成适当的标头。

但是,在我的生产服务器(Linux 机器、Apache/2.2.31、PHP 作为 FastCGI 和 mod_fcgid/2.3.9 运行)中,它仅适用于静态资产,不适用于 PHP 脚本。

我是否正确怀疑差异来自 PHP SAPI?有没有办法修复它,所以我不需要复制生成 HTTP 标头的代码?

0 投票
1 回答
1837 浏览

.htaccess - mod_expires.c 和 mod_headers.c 无法根据 google pagespeed 见解工作

google pagespeed 洞察力上运行测试时,我收到错误“利用浏览器缓存”

我做了什么

  1. 确认模块已启用并在 Apache 中工作。

    正如您在此处看到的:http: //noram.dk/phpinfo.php都已安装并启用mod_expiresmod_headers另外,当我写的时候sudo a2enmod expiressudo a2enmod headers我得到一个“模块已经启用”(我确实重新启动了 Apache2)

  2. 双重确认模块已启用并在 Apache 中工作。

    为了仔细检查这一点,我还尝试从我的 .htaccess 文件(以及结束标记 ofc)中删除<ifModule mod_expires.c><ifModule mod_headers.c>行,以确认我仍然可以在没有服务器的情况下加载页面。我还确认我的 .htaccess 文件正在工作,在其中写了一些垃圾,这确实会杀死我的网站。(我也有 RewriteRule 的工作)

所以总结一下

  1. 我很确定模块已安装并正在运行。
  2. htaccess 文件正在工作并被服务器读取。
  3. 我已经按照我应该的方式在 htaccess 文件中插入了代码。

但是,我不断从 google PageSpeed 洞察中获得相同的反馈。

0 投票
1 回答
92 浏览

apache - RequestHeder 没有得到其他变量值

我有一个包含标头的请求,X-Client-Cert我需要将其分配给 apache 中虚拟主机配置中的另一个标头。我怎样才能做到这一点?

Thist 解决方案不起作用,因为 X-Client-Cert 不是环境变量,但是如果我使用

我可以看到内容X-Client-Cert

是否有任何形式将内容X-Client-Cert插入 NewHeader 用户定义的变量?

0 投票
1 回答
638 浏览

apache - 为什么文件大小对于 apache 命令 Header 附加 Vary User-Agent 来触发很重要?

我正在使用 symfony 3,并且有以下 .htaccess 文件(附加到此消息的最底部,标记为'problem .htaccess')。我正在使用网站 gtmetrix.com(它使用 pagespeed)来优化我的网站,但我的 .css 和 .js 文件出现以下错误。

在您提到它之前,它说Header append Vary User-Agent显然没有说接受编码..

1.)(我已经查看了如何在 .htaccess 中指定“Vary: Accept-Encoding”标头),其中讨论了如何设置它。

2.)我列出的代码在我的同一服务器上的另一个站点上工作,我没有收到不同的编码错误消息。,这意味着我拥有的代码无论如何都应该可以工作(另一个站点也有 main.css 和 main.js)。该 htaccess 文件的唯一区别是它用于 SLIM 框架而不是 symfony,因此它如下所示:

超薄框架(其他站点 .HTACCESS)

Symfony 3 框架(问题 .HTACCESS)

问题是: symfony 框架或其 .htaccess 文件不允许我使用该Header append Vary User-Agent命令有什么不同?

更新

因此,在做了一些实验后,我将 symfony 的 .htaccess 文件修改为与 slims 相同的文件,唯一的区别是将 DirectoryIndex app.php 行添加到 slims .htaccess 文件中,然后告诉它改写为 app.php index.php,但错误仍然存​​在。这告诉我它可能不是 htaccess 文件,而是我要创建资产的方式?

在代码中,它在 TWIG 模板中看起来像这样。

也许是因为我正在使用资产,它以某种方式在引擎中对该资源的编码器做一些事情?我不确定它会如何做到这一点,但不确定现在还能去哪里寻找。

更新#2

好的,在这个谜题中取得了重大进展,我得到了可变编码消息,但我不完全确定为什么,但我知道 main.css 文件的文件大小很重要。

当 main.css 有以下内容时,它将无法指定一个 vary:accept 编码头?也许是因为它太小而无法压缩?

但是,给它以下 main.css 内容,然后消息在 gtmetrix 上消失。

我仍然在 javascript 上遇到错误,但我将继续向我的 javascript 文件中添加随机函数,看看这是否会使错误消失。目前我的JS文件是:

更新#3:

事实上,文件大小是罪魁祸首,将我的 js 文件更改为..

足以使标头变化编码错误消失。

更新#4

正在阅读此页面(https://www.fastly.com/blog/best-practices-for-using-the-vary-header),显然如果您使用 mod_deflate 正确的 Vary 标头会自动添加到您的回复中。因此,当 main.css 和 main.js 文件很小时,mod_deflate 很可能会覆盖我建议的更改。

所以新的问题:

为什么尝试添加 Header append Vary User-Agent命令时文件大小很重要?在这种情况下,我应该忽略 gtmetrix (pagespeed) 的速度优化建议吗?或者如果 mod_deflate 被覆盖,这甚至是一个问题吗?如果是这样,我该如何修复 mod_deflate 导致的标头覆盖?