• Насколько правильный .htaccess код и безопасный?

    @Bernusha Автор вопроса
    SagePtr, нет, как раз слышал обратно, что можно взламывать пхп через это совйство.
  • Насколько правильный .htaccess код и безопасный?

    @Bernusha Автор вопроса
    Владислав Лысков, это одна из частей кода.
    Я создатель
  • Насколько правильный .htaccess код и безопасный?

    @Bernusha Автор вопроса
    часть 3
    # Отключаем сжатие для тех браузеров, у которых проблемы с его распознаванием.
    <IfModule mod_deflate.c>
        BrowserMatch "MSIE [456]" no_gzip dont-vary
        BrowserMatch "SV1;" !no_gzip !dont-vary
        BrowserMatch "Opera" !no_gzip !dont-vary
        BrowserMatch "Firefox/[0-3]\." gzip-only-text/html
        BrowserMatch "Firefox/3\.[1-9]" !gzip-only-text/html
        BrowserMatch "Chrome/2" gzip-only-text/html
        BrowserMatch "Safari" gzip-only-text/html
        BrowserMatch "Konqueror" gzip-only-text/html
    </IfModule>
    
    # Включаем gzip.
    <IfModule mod_gzip.c>
        mod_gzip_on       Yes
        mod_gzip_dechunk  Yes
        mod_gzip_item_include file      \.(html?|xml|css|js|php|jpg|png|gif)$
        mod_gzip_item_include handler   ^cgi-script$
        mod_gzip_item_include mime      ^text/.*
        mod_gzip_item_include mime      ^application/x-javascript.*
        mod_gzip_item_exclude mime      ^image/.*
        mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
    </IfModule>
    
    # ------------------------------------------------------------------------------
    # | Истекает заголовки (для лучшего контроля кэша)                             |
    # ------------------------------------------------------------------------------
    # Следующие заголовки expires установлены довольно далеко в будущем. Если вы этого не сделаете
    # управление версиями с очисткой кэша на основе имени файла, подумайте о снижении
    # время кеширования для таких ресурсов, как CSS и JS, примерно до 1 недели.
    # Отдача HTTP-заголовков Expires для всех статических объектов
    <IfModule mod_expires.c>
        ExpiresActive on
        ExpiresDefault                                      "access plus 1 week"
    
        # CSS
    
        ExpiresByType text/css                              "access plus 1 month"
    
        # Data interchange
    
        ExpiresByType application/atom+xml                  "access plus 1 hour"
        ExpiresByType application/rdf+xml                   "access plus 1 hour"
        ExpiresByType application/rss+xml                   "access plus 1 hour"
    
        ExpiresByType application/json                      "access plus 0 seconds"
        ExpiresByType application/ld+json                   "access plus 0 seconds"
        ExpiresByType application/schema+json               "access plus 0 seconds"
        ExpiresByType application/vnd.geo+json              "access plus 0 seconds"
        ExpiresByType application/xml                       "access plus 0 seconds"
        ExpiresByType text/xml                              "access plus 0 seconds"
    
        # Favicon (cannot be renamed!) and cursor images
    
        ExpiresByType image/vnd.microsoft.icon              "access plus 1 week"
        ExpiresByType image/x-icon                          "access plus 1 week"
    
        # HTML
    
        ExpiresByType text/html                             "access plus 0 seconds"
    
        # JavaScript
    
        ExpiresByType application/javascript                "access plus 1 year"
        ExpiresByType application/x-javascript              "access plus 1 year"
        ExpiresByType text/javascript                       "access plus 1 year"
    
        # Manifest files
    
        ExpiresByType application/manifest+json             "access plus 1 week"
        ExpiresByType application/x-web-app-manifest+json   "access plus 0 seconds"
        ExpiresByType text/cache-manifest                   "access plus 0 seconds"
    
        # Media files
    
        ExpiresByType audio/ogg                             "access plus 1 month"
        ExpiresByType image/bmp                             "access plus 1 month"
        ExpiresByType image/gif                             "access plus 1 month"
        ExpiresByType image/jpeg                            "access plus 1 month"
        ExpiresByType image/png                             "access plus 1 month"
        ExpiresByType image/svg+xml                         "access plus 1 month"
        ExpiresByType image/webp                            "access plus 1 month"
        ExpiresByType video/mp4                             "access plus 1 month"
        ExpiresByType video/ogg                             "access plus 1 month"
        ExpiresByType video/webm                            "access plus 1 month"
    
        # Web fonts
    
        # Embedded OpenType (EOT)
        ExpiresByType application/vnd.ms-fontobject         "access plus 1 month"
        ExpiresByType font/eot                              "access plus 1 month"
    
        # OpenType
        ExpiresByType font/opentype                         "access plus 1 month"
    
        # TrueType
        ExpiresByType application/x-font-ttf                "access plus 1 month"
    
        # Web Open Font Format (WOFF) 1.0
        ExpiresByType application/font-woff                 "access plus 1 month"
        ExpiresByType application/x-font-woff               "access plus 1 month"
        ExpiresByType font/woff                             "access plus 1 month"
    
        # Web Open Font Format (WOFF) 2.0
        ExpiresByType application/font-woff2                "access plus 1 month"
    
        # Other
        ExpiresByType text/x-cross-domain-policy            "access plus 1 week"
    </IfModule>
    
    
    # Заголовки Cache-Control
    # Включаем кэш в браузерах посетителей
    <ifModule mod_headers.c>
        # Все html и htm файлы будут храниться в кэше браузера один день
        <FilesMatch "\.(html|htm)$">
            Header set Cache-Control "max-age=43200"
        </FilesMatch>
        # Все css, javascript и текстовые файлы будут храниться в кэше браузера одну неделю
        <FilesMatch "\.(js|css|txt)$">
            Header set Cache-Control "max-age=604800"
        </FilesMatch>
        # Все флэш файлы и изображения будут храниться в кэше браузера один месяц
        <FilesMatch "\.(flv|swf|ico|gif|jpg|jpeg|png)$">
            Header set Cache-Control "max-age=2592000"
        </FilesMatch>
        # Отключаем кеширование php и других служебных файлов
        <FilesMatch "\.(pl|php|cgi|spl|scgi|fcgi)$">
            Header unset Cache-Control
        </FilesMatch>
    </IfModule>
    
    
    # Запрет отдачи HTTP-заголовков Vary браузерам семейства MSIE
    <IfModule mod_setenvif.c>
      BrowserMatch "MSIE" force-no-vary
      BrowserMatch "Mozilla/4.[0-9]{2}" force-no-vary
    </IfModule>