Заголовки header из .htaccess игнорируются на связке apache + nginx
-
- Posts: 5
- Joined: Wed Jun 03, 2020 4:47 pm
- Os: Ubuntu 17x
- Web: apache + nginx
Заголовки header из .htaccess игнорируются на связке apache + nginx
Добрый вечер.
Заголовки header из .htaccess игнорируются на связке apache + nginx.
Пример заголовков из .htaccess:
Я знаю два варианта решения этой проблемы:
1. # vim /etc/nginx/nginx.conf
И напрямую вписать эти заголовки для всего сервера, подправив синтаксис для nginx.
2. Создать отдельный шаблон с 2-мя фалйами в папке /usr/local/vesta/data/templates/web/nginx.
Но заголовки для разных сайтов могут быть разными и каждый раз создавать шаблоны очень не удобно.
Говорят, что второй вариант для связки apache + nginx самый правильный иначе скорость работы NGINX будет теряться.
Но я все же надеюсь, что кто-то подскажет третий вариант как можно использовать заголовки из .htaccess, что бы они проксировались через nginx proxy как есть, а не заменялись принудительно загаловками nginx?
Require all denied, RewriteRule из .htaccess он же понимает, хотя это, конечно, обработка на стороне apache, но все же.
Может nginx нужно еще и .user.ini подсунуть? Хотя я сомневаюсь что это поможет.
Иначе остается только один вариант использовать чистый apache. ;(
Заголовки header из .htaccess игнорируются на связке apache + nginx.
Пример заголовков из .htaccess:
Code: Select all
<IfModule mod_headers.c>
Header always set Referrer-Policy "strict-origin-when-cross-origin"
Header always set X-Content-Type-Options "nosniff"
Header always set X-Frame-Options "SAMEORIGIN"
Header always set X-Download-Options "noopen"
Header always set X-Permitted-Cross-Domain-Policies "none"
Header always set X-Robots-Tag "none"
Header always set X-XSS-Protection "1; mode=block"
</IfModule>
1. # vim /etc/nginx/nginx.conf
И напрямую вписать эти заголовки для всего сервера, подправив синтаксис для nginx.
2. Создать отдельный шаблон с 2-мя фалйами в папке /usr/local/vesta/data/templates/web/nginx.
Но заголовки для разных сайтов могут быть разными и каждый раз создавать шаблоны очень не удобно.
Говорят, что второй вариант для связки apache + nginx самый правильный иначе скорость работы NGINX будет теряться.
Но я все же надеюсь, что кто-то подскажет третий вариант как можно использовать заголовки из .htaccess, что бы они проксировались через nginx proxy как есть, а не заменялись принудительно загаловками nginx?
Require all denied, RewriteRule из .htaccess он же понимает, хотя это, конечно, обработка на стороне apache, но все же.
Может nginx нужно еще и .user.ini подсунуть? Хотя я сомневаюсь что это поможет.
Иначе остается только один вариант использовать чистый apache. ;(
-
- Support team
- Posts: 1111
- Joined: Tue Jul 30, 2013 10:18 pm
- Contact:
- Os: CentOS 6x
- Web: nginx + php-fpm
Re: Заголовки header из .htaccess игнорируются на связке apache + nginx
Есть вариант получше - использовать nginx+php-fpm и забыть про апач.AlektroNik wrote: ↑Wed Jun 03, 2020 6:29 pm
Иначе остается только один вариант использовать чистый apache. ;(
https://stackoverflow.com/questions/124 ... eam-server
-
- Posts: 5
- Joined: Wed Jun 03, 2020 4:47 pm
- Os: Ubuntu 17x
- Web: apache + nginx
Re: Заголовки header из .htaccess игнорируются на связке apache + nginx
Тогда придется переписывать для каждого движка правила из .htaccess.
А вот тут я немного не понял.
Т.е. мне в шаблон nginx нужно прописать как переменные и тогда он эти загаловки будет забирать у apache и конкртено у .htaccess?
Code: Select all
add_header X-Content-Type-Options $http_x_content_type_options always;
add_header X-Frame-Options $http_x_frame_options always;
add_header X-Download-Options $http_x_download_options always;
add_header X-Permitted-Cross-Domain-Policies $http_x_permitted_cross_domain_policies always;
add_header X-Robots-Tag $http_x_robots_tag always;
add_header X-XSS-Protection $http_x_xss_protection always;
-
- Posts: 5
- Joined: Wed Jun 03, 2020 4:47 pm
- Os: Ubuntu 17x
- Web: apache + nginx
Re: Заголовки header из .htaccess игнорируются на связке apache + nginx
Попробовал прописать рядом с действующими заголовка напрямую в конфиг nginx. Тремя разными способами, бес толку.
Code: Select all
# vim /etc/nginx/nginx.conf
...
add_header Referrer-Policy $http_referrer_policy always;
add_header Referrer-Policy $sent_http_referrer_policy always;
add_header Referrer-Policy $upstream_http_referrer_policy always;
...