Pull to refresh

Comments 16

Горячо поддерживаем!
Но у большинства клиентов простые проекты где-то на простых виртуальных хостингах и всё, что им доступно — чуть-чуть подкрутить руками или через админку файл .htaccess. Именно о том, что можно с этим файлом сделать и что получить в итоге мы и рассказали. Собрали в один список, чтобы была свежая публикация.
Многие находят посты в блогах от, например, 2017 года и думают, мол, всё поменялось и уже всё другое. Ну вот мы и собрали то, что не поменялось.
Прям странно видеть такую развесистую статью по апачу на хабре 2019 )

Кстати, о самом популярном
Файл .htaccess (сокращение от «hypertext access») переопределяет настройки самого популярного типа веб-серверов Apache и его аналогов.

К счастью, уже нет.

Пруф на netcraft
Интересно — чем такие скачки серверов от Microsoft обусловлены в период осень 2017 — осень 2018?
Старались рассказать о самом важном так, чтобы было понятно новичкам.

За пруф от Netcraft — спасибо. Это интересно и nginx лидирует в количественном показателе.
Apache как был самым популярным так и остался.
Перекосы статистики связаны с тем, что перед Apache ставят разного рода проксирующие версии веб серверов для отдачи статики. Тот же Nginx.
Динамику как отдавали Apache (в большинстве случаев) так и отдают и на то есть масса причин.

Выполнение динамики что в Nginx что в Apache практически идентичны по производительности (О чем есть масса тестов от DigitalOucean до уважаемых специалистов).

Статику Nginx отдает намного лучше Apache, но и намного хуже чем например LightHttp, при этом Nginx не умеет и никогда не будет уметь менять свою конфигурацию без перегрузки сервиса. А Apache это умеет, что для целого ряда проектов обязательное требование. Например тех же хостингов.

И т.д. и т.п.

Редирект на HTTPS
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}


Редирект на HTTPS
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]


А где варианты:
«с httр://www.site.ru на https://site.ru»?
«с httр://site.ru на httрs://www.site.ru»?
О, спасибо, надо добавить.
Насколько понимаю пп. 5, 6, 17 — так себе защита, заголовок REFERER легко сфабриковать. Тут скорее надо смотреть, была ли вначале загружена страница, с которой ссылка на медиа-файл (в случае 5).
Есть дирректива %{HTTP_REFERER}: tltech.com/info/referrer-htaccess
И можно накрутить проверок. Но кажется, что это лучше не через .htaccess делать, а искать другой путь защиты.

Вариант с проверкой загрузки страницы и уже дальнейшим действием от неё — отличный.

Я дико извиняюсь, последний раз с апачем имел дело в 2010, но во-первых, CharsetSourceEnc требует включенного mod_charset, а во-вторых, внутри используется iconv на каждый запрос — не слишком ли это дорого для шаред хостингов?

Директива CharsetSourceEnc касается только загружаемых на сервер файлов.

Так как это не частая операция, то iconv на каждый запрос не очень критичен в данном случае.

Мы же явно пишем в статье:

А такая команда означает, что все загружаемые на сервер файлы будут преобразованы в Windows-1251
Безобразная с технической точки зрения статья.
19 полезных возможностей файла .htaccess

Все описанное не является возможностями файла .htaccess
Это возможности либо самого Apache, либо модулей для него.

.htaccess это всего лишь файл, который позволяет, в случае если это разрешено (через установку AllowOverride), менять конфигурационные параметры самого веб сервера, или его модулей.

То есть утверждать, что это якобы делается благодаря файлу .htaccess ровно тоже самое что утверждать что я лечу на самолете благодаря посадочному талону. А не самому самолету.

Название фактически представляет собой расширение, поэтому важно не забыть про точку вначале

Название не представляет собой расширение.
Точка в начале, это исторически сложившийся синтаксис в nix системах, обозначающий что по умолчанию файл может быть скрыт из общего листинга файлов.

Все описанное не является возможностями файла .htaccess

Спасибо за комментарий. Статья размещена в разделе «Поисковая оптимизация» и написана для пользователей, которые могут не разбираться в тонкостях работы Apache и сопутствующей терминологии. Но оптимизаторы знают, что такое .htaccess. Им нужно простое решение: скопировать, вставить и получить результат. Может, название и не идеально с технической точки зрения, но оно емкое и по нему понятно, о чем статья.

Название не представляет собой расширение.
Точка в начале, это исторически сложившийся синтаксис в nix системах, обозначающий что по умолчанию файл может быть скрыт из общего листинга файлов.

Спасибо за замечание, исправили в статье.
Sign up to leave a comment.