Вход Регистрация
* -=(C)DRU987=- (Dev)

.htaccess - набор инструкций для мастера

  1. ### Закомментированое указание индексного файла - название запускного (по умолчанию) файла может быть любым - указывается и раскомментируется при необходимости
  2. #DirectoryIndex index.php index.html
  3. ### Закрываем доступ по ip нарушителям (пустым быть не может - лучше совсем удалить, если некого банить
  4. <Limit POST, GET>
  5. Order Allow,Deny
  6. Allow from all
  7. Deny from 127.0.2.1
  8. </Limit>
  9. ###Кодировка
  10. AddDefaultCharset utf-8
  11. ###запрещает показывать содержимое каталогов, если в них нет индексного файла
  12. Options -Indexes
  13. ###позволяет использовать символические ссылки на файлы или каталоги вне корня сайта
  14. Options +FollowSymLinks
  15. ###Временная зона сайта: http://www.php.net//manual/ru/timezones.php
  16. <IfModule mod_setenvif.c>
  17. SetEnv TZ Europe/Moscow
  18. </IfModule>
  19. ###скрыть подпись сервера
  20. ServerSignature Off
  21. ###включение режима перенаправления - в идеале лучше проверять наличие модуля, но его отсутствие/невключение достаточно редко (все правила включить между <IfModule mod_rewrite.c> и </IfModule>
  22. RewriteEngine On
  23. ###указываем корень перенаправления - если, например, сайт в подпапке, то указывается эта папка как отправная точка отсчета
  24. RewriteBase /
  25. ###Склейка зеркал на основной без www
  26. RewriteCond %{HTTP_HOST} ^www.site\.com$ [NC]
  27. RewriteRule ^(.*)$ http://site.com/$1 [R=301,L]
  28. ###Убирается расширение .php из адресной строки
  29. RewriteCond %{REQUEST_FILENAME} !-d
  30. RewriteCond %{REQUEST_FILENAME}\.php -f
  31. RewriteRule ^(.*)$ $1.php [L]
  32. ###закомментировано: закрываем доступ по имени сайта (если даже ip изменится, то название все равно останется)
  33. #RewriteCond %{HTTP_REFERER} ^http(s)?://(www\.)?bad_site.com.*$ [NC]
  34. #RewriteRule .* - [F,L]
  35. ###Попытка закрыть возможность скачивания через телепорт - бесполена, в общем-то, поскольку он и подобные могут маскироваться под USER_AGENT разных браузеров - но все-таки
  36. RewriteCond %{HTTP_USER_AGENT} ^Teleport
  37. RewriteRule ^.*$ - [F]
  38. ###Защита от хотлинка - то есть, от отображения материалов сайта на другом сайта через простое указание источника. Можно добавлять любые желаемые расширения по тому же принципу
  39. RewriteCond %{HTTP_REFERER} !^$
  40. #если пришли и _не_ с сайта http://site.ru
  41. RewriteCond %{HTTP_REFERER} !^http://(www.)?site\.com/.*$ [NC]
  42. RewriteRule .(jpg|gif|png|css|mov|swf|dcr|exe|rar|avi|vob|zip)$ - [F]
  43. ###Явное выключение магических кавычек: _http://www.php.su/security/?magicquotes
  44. php_flag magic_quotes_gpc off
  45. ###Закомментированное явное отключение глобальных переменных - опции в php.ini, которая указывает на необходимость регистрации переменных полученные методом POST или GET в глобальный массив $GLOBALS
  46. #php_value register_globals 0
  47. ###отключаем вывод ошибок - в лог писаться будут, а пользователю незачем видеть
  48. php_flag display_errors off
  49. php_flag display_startup_errors off
  50. ###сжатие по типам - если модкль включен
  51. <IfModule mod_gzip.c>
  52. mod_gzip_on Yes
  53. mod_gzip_dechunk Yes
  54. mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$
  55. mod_gzip_item_include mime ^text\.*
  56. mod_gzip_item_include mime ^application/x-javascript.*
  57. mod_gzip_item_exclude mime ^image\.*
  58. mod_gzip_item_exclude rspheader^Content-Encoding:.*gzip.*
  59. </IfModule>
  60. ###кэширование, кастомизированное по типам
  61. <ifModule mod_headers.c>
  62. #кэшировать html и htm файлы на один день
  63. <FilesMatch "\.(html|htm)$">
  64. Header set Cache-Control "max-age=43200"
  65. </FilesMatch>
  66. #кэшировать css, javascript и текстовые файлы на одну неделю
  67. <FilesMatch "\.(js|css|txt)$">
  68. Header set Cache-Control "max-age=604800"
  69. </FilesMatch>
  70. #кэшировать флэш и изображения на месяц
  71. <FilesMatch "\.(flv|swf|ico|gif|jpg|jpeg|png)$">
  72. Header set Cache-Control "max-age=2592000"
  73. </FilesMatch>
  74. #отключить кэширование
  75. <FilesMatch "\.(pl|php|cgi|spl|scgi|fcgi)$">
  76. Header unset Cache-Control
  77. </FilesMatch>
  78. </IfModule>
  79. ###Продолжение кэширования по другому модулю
  80. <ifModule mod_expires.c>
  81. ExpiresActive On
  82. #по умолчанию кеш в 5 секунд
  83. ExpiresDefault "access plus 5 seconds"
  84. #кэшировать флэш и изображения на месяц
  85. ExpiresByType image/x-icon "access plus 2592000 seconds"
  86. ExpiresByType image/jpeg "access plus 2592000 seconds"
  87. ExpiresByType image/png "access plus 2592000 seconds"
  88. ExpiresByType image/gif "access plus 2592000 seconds"
  89. ExpiresByType application/x-shockwave-flash "access plus 2592000 seconds"
  90. #кэшировать css, javascript и текстовые файлы на одну неделю
  91. ExpiresByType text/css "access plus 604800 seconds"
  92. ExpiresByType text/javascript "access plus 604800 seconds"
  93. ExpiresByType application/javascript "access plus 604800 seconds"
  94. ExpiresByType application/x-javascript "access plus 604800 seconds"
  95. #кэшировать html и htm файлы на один день
  96. ExpiresByType text/html "access plus 43200 seconds"
  97. #кэшировать xml файлы на десять минут
  98. ExpiresByType application/xhtml+xml "access plus 600 seconds"
  99. </ifModule>
» Описание: Ниже немного полезного для штакета , многим пригодится.
» Время добавления: 29 Окт 2014 в 20:35
» Посмотров: 1646
» textarea
» Рейтинг: [+1 | -0]
Комментарии [0]
Онлайн: 1
Реклама