【Azure 应用服务】App Service 通过配置web.config来添加请求返回的响应头(Response Header)

问题描述

在Azure App Service上部署了站点,想要在网站的响应头中加一个字段(Cache-Control),并设置为固定值(Cache-Control:no-store)

效果类似于本地IIS中设置IIS响应标头

No alt text provided for this image

有时,也会根据不同的安全要求,需要添加Response Header,如下:

#Adding security headers

X-Frame-Options "SAMEORIGIN"
X-Xss-Protection "1; mode=block"
X-Permitted-Cross-Domain-Policies "none"
X-Content-Type-Options "nosniff"
Expect-CT "max-age=86400, enforce"
Referrer-Policy "strict-origin-when-cross-origin"
Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
Content-Security-Policy "block-all-mixed-content; frame-ancestors 'self'; form-action 'self'; object-src 'none'; base-uri 'self';"
Permissions-Policy "accelerometer=(self), camera=(self), geolocation=(self), gyroscope=(self), magnetometer=(self), microphone=(self), payment=(self), usb=(self)"

问题解决

在App Service的web.config文件中添加配置Cache-Control为no-store,可以登录到 **kudu( ***https://.scm.chinacloudsites.cn/DebugConsole ***) **站点查看 wwwroot 下是否存在 web.config 文件,如果没有可以新建一个,web.config配置参考如下:



    
          
      
        
            
      
    
    

同理,如果是需要加上安全相关的Header,追加即可。



    
          
      
        
            

        
           
           
           
           
           
           
           
           
           
      
    
    

HTTP 消息头允许客户端和服务器通过** request response**传递附加信息。一个请求头由名称(不区分大小写)后跟一个冒号“:”,冒号后跟具体的值(不带换行符)组成。该值前面的引导空白会被忽略。

  • X-Frame-Options : 用来给浏览器 指示允许一个页面 可否在 ,