Page 1 of 1

Заголовки header из .htaccess игнорируются на связке apache + nginx

Posted: Wed Jun 03, 2020 6:29 pm
by AlektroNik
Добрый вечер.
Заголовки 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. ;(

Re: Заголовки header из .htaccess игнорируются на связке apache + nginx

Posted: Wed Jun 03, 2020 9:43 pm
by grayfolk
AlektroNik wrote:
Wed Jun 03, 2020 6:29 pm

Иначе остается только один вариант использовать чистый apache. ;(
Есть вариант получше - использовать nginx+php-fpm и забыть про апач.

https://stackoverflow.com/questions/124 ... eam-server

Re: Заголовки header из .htaccess игнорируются на связке apache + nginx

Posted: Thu Jun 04, 2020 9:39 am
by AlektroNik
grayfolk wrote:
Wed Jun 03, 2020 9:43 pm
Есть вариант получше - использовать nginx+php-fpm и забыть про апач.
Тогда придется переписывать для каждого движка правила из .htaccess.
grayfolk wrote:
Wed Jun 03, 2020 9:43 pm
https://stackoverflow.com/questions/124 ... eam-server
А вот тут я немного не понял.
Т.е. мне в шаблон 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;

Re: Заголовки header из .htaccess игнорируются на связке apache + nginx

Posted: Thu Jun 04, 2020 10:06 am
by AlektroNik
Попробовал прописать рядом с действующими заголовка напрямую в конфиг 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;
...