Сбой просмотра корня веб-сайта, если в .htaccess включены опции TRACK / TRACE / OPTIONS - PullRequest
0 голосов
/ 12 апреля 2019

В моем файле .htaccess есть следующий блок

<IfModule mod_rewrite.c>
     RewriteEngine On
     RewriteRule %{REQUEST_METHOD} ^(TRACE|TRACK|OPTIONS)
     RewriteRule .* - [F]
</IfModule>

Я ожидал бы, что это заблокирует запросы OPTIONS / TRACK и TRACE, но разрешит запросы HTTP.

Когда я просматриваю

 myserver.com 

Я получаю

Forbidden
You don't have permission to access / on this server.

Однако, когда я посещаю

myserver.com/SubPage

Страница загружается? Это немного странно, и я ожидал бы большей последовательности. Это сайт Wordpress, работающий на реализации Apache / MySQL.

Мой файл .htccess выглядит следующим образом

# 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]
   **#RewriteRule %{REQUEST_METHOD} ^(TRACE|TRACK|OPTIONS)**
   **#RewriteRule .* - [F]**
</IfModule>
# END WordPress

<IfModule mod_headers.c>
   Header set X-XSS-Protection "1; mode=block"
   Header always append X-Frame-Options SAMEORIGIN
   Header always set Referrer-Policy "same-origin"
   Header always set Feature-Policy "microphone 'none'; payment 'none'; sync-xhr 'self' http://myserver.com/"
   Header set X-Content-Type-Options nosniff
   Header unset X-Powered-By
   Header unset X-Pingback
   Header unset SERVER
   Header set Referrer-Policy: strict-origin-when-cross-origin 

</IfModule>

# Protect sensitive files
<FilesMatch "^(wp-config.php|license.txt|readme.html)">
   Order Allow,Deny
   Deny from all
</FilesMatch>

# protect phpinfo
<Files php-info.php>
   Order Deny,Allow
   Deny from all
</Files>

# Block User ID Phishing Requests
<IfModule mod_rewrite.c>
    RewriteCond %{QUERY_STRING} ^author=([0-9]*)
    RewriteRule .* http://www.myserver,com/? [L,R=302]
</IfModule>
...