Reputation: 89
How can I add the following security headers to my website?
X-Frame-Options
- Protects against Clickjacking attacks
X-XSS-Protection
- Mitigates Cross-Site Scripting (XSS) attacks
X-Content-Type-Options
- Prevents possible phishing or XSS attacks
Upvotes: 5
Views: 14152
Reputation: 4043
Two ways you can add these headers:
Apache Conf or .htaccess
File
<IfModule mod_headers.c>
Header set X-Frame-Options "DENY"
Header set X-XSS-Protection "1; mode=block"
Header set X-Content-Type-Options "nosniff"
</IfModule>
The Apache/htaccess approach is most likely the preferred way. If you add it to your configuration file, which may be in your httpd.conf
or it could be in a vhost configuration file (really depends on how the server is setup), you would place it within a <Directory>
element. To use .htaccess
the configuration for the site must have AllowOverride All
. While it's pretty standard, you must have the mod_headers
library installed in Apache as well.
PHP
header('X-Frame-Options: DENY');
header('X-XSS-Protection: 1; mode=block');
header('X-Content-Type-Options: nosniff');
With the PHP approach, you will need to write this to every response, so if you do not have a bootstrap that can do this, I'd recommend leveraging either your apache configuration file or the .htaccess
file.
Upvotes: 16