删除内容位置响应标头

时间:2018-06-29 16:38:11

标签: .htaccess httpresponse

对于刚刚接触Web开发的人,我只是注意到有一个响应标头,称为“ Content-Location”,它显示源文件(PHP)。现在,我检查了其他几个站点,它们没有在响应标题中显示此站点。我不知道这是因为我的.htaccess文件(使用生成器)构造不良,Web托管服务提供商,CloudFlare还是导致此问题显示的完全不同的原因。

我将发布.htaccess文件,以防万一:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
...
RewriteRule ^post/([^/]*)\.php$ /news?post=$1 [L]
...
RewriteRule ^([^\.]+)$ $1.php [NC,L]

因此,当转到https://example.com/news时,它将在DevTools中显示以下内容:

...
content-encoding: br
content-location: news.php
content-type: text/html; charset=UTF-8
...

由于某种原因,它为除索引之外的所有页面执行此操作。我不希望这些响应标题显示在任何地方。如果有人可以尝试帮助我,将不胜感激。

编辑

因此,我尝试访问https://example.com/news.php,然后没有显示“ Content-Location”。因此,这可能与我当前的.htaccess设置有关。

1 个答案:

答案 0 :(得分:0)

经过数小时的反复试验,我找到了解决方案,在我的.htaccess文件中添加了以下几行

<IfModule mod_negotiation.c>
    Options -MultiViews
</IfModule>