我有一个奇怪的问题:
我有一堆服务器上每个网站的标头都相同。我认为“ 只能在httpd.conf
中设置一次,以便每次有新的添加/更改操作时,将写入的内容保存到一堆.htaccess中。”
这就是我要做的;
在httpd.conf
文件中虚拟主机之前,我设置了:
<IfModule mod_headers.c>
<Directory '/'>
Header always set Feature-Policy "accelerometer 'none'; camera 'none'; geolocation 'none'; gyroscope 'none'; magnetometer 'none'; microphone 'none'; payment 'none'; usb 'none'"
Header always set Cache-Control no-cache,must-revalidate
Header always set X-Clacks-Overhead "GNU Terry Pratchett"
Header always set X-XSS-Protection 1;mode=block
Header always set X-Content-Type-Options nosniff
Header always set X-Frame-Options SAMEORIGIN
Header always set Content-Language en
Header always set Referrer-Policy origin-when-cross-origin
Header unset Last-Modified
Header unset X-Powered-By
Header always set Strict-Transport-Security "max-age=31536000;" "expr=%{HTTPS} == 'on'"
Header always set Expect-CT enforce,max-age=2592000
</Directory>
</IfModule>
但是,在执行此操作并强制重新启动Apache(版本2.4.37)之后,我发现Header
中没有发送其他或编辑过的.htaccess
指令。
例如;每个帐户都有自己的CSP策略,这反映在帐户public_html/.htaccess
文件中:
示例:
Header set Content-Security-Policy "upgrade-insecure-requests; default-src 'self' https:;"
但是,当任何浏览器读取标头时,接收到的标头仅是httpd.conf中的标头,而.htaccess
中没有显示其他或已更改的标头。
我不知道为什么会这样吗?
.htaccess
语句的<IfModule ...>
中。.Htaccess
文件的其他部分正在正常读取。 .htaccess
中起作用。据我所知,这是 not 标头语法。非常感谢您的帮助。
答案 0 :(得分:0)
经过大量探索,我发现发生这种情况的原因是由于PHP是通过CGI处理程序运行的。更改为{s: np.std(df[(df.Cat == s) &
(df.Date > today-datetime.timedelta(days=10))].Val)
for s in df.Cat.unique()}
处理程序可立即解决此问题。