4

I am trying to set a header for a specific file via my htaccess file in order to give my service worker access to my root. Unfortunately I don't see the header appearing... Perhaps I am not targeting the file (https://www.stefanklokgieters.nl/wp-content/themes/stefanklokgieters/serviceworker.js) correctly?

# Add custom header to single file
<Files "/wp-content/themes/stefanklokgieters/serviceworker.js">
Header set Service-Worker-Allowed "/"
</Files>

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Many thanks in advance!

Cheers, Stefan

1 Answers1

10

In a Files directive, you can not match against file path, you can match against filename.ext only

<Files "serviceworker.js">
Header Set Service-Worker-allowed "/"
</Files>

Put this in an .htaccess file in the appropriate subdirectory, to restrict it to this path only, e.g. /path/to/wp-content/themes/stefanklokgieters/.htaccess

Olaf Dietsche
  • 72,253
  • 8
  • 102
  • 198
Amit Verma
  • 40,709
  • 21
  • 93
  • 115