скрытое меню

htaccess или с чего надо начинать создавать свой сайт

Сервер Appache

Никого не слушайте подавляющее большинство сайтов на Appache . Это линакс, т.е. бесплатная операционная система - в этом залог популярности. Никаких CRM типа Drupal,Bitrix и т.д. все делаем только своими ручками - традиционно используем html, css, php , mysql.

модуль mod_rewrite основная прога для сайта

Она рулит редиректами страниц, заголовками отдаваемыми сервером и вообще с нее начинает сервер отрабатывать запрос с от вашего браузера. Настраивается все в текстовом файле .htaccess . Он лежит в корне вашего сайта. Я не буду говорить обо всем и тем более сначала , т.к. цель сделать шпаргалку для себя , ибо устал наступать на одни и те же грабли каждый раз... Итак первое это комментируем в .htaccess все директивы, переменные сервера и объясняем синтаксис шаблонов. Каждый долбаный символ, каждый пробел имеет значение.

Убираем index.php или index.htm или index.html в запросе

Сначала убираем index.php или index.htm или index.html в запросе. Оставляем только каталог , т.е. примерно так : kkmspb.ru/index.htm -> kkmspb.ru/

%{THE_REQUEST}   это вот что  <GET /index.html HTTP/1.1>
%{REQUEST_URI}  это  /index.htm

RewriteCond %{THE_REQUEST} ^(.*)\ /index(\.html|\.htm|\.php){1}(.*)\ HTTP/  

#RewriteCond %{REQUEST_URI} ^(.*)/index(\.html|\.htm|\.php){1}(.*)$

RewriteRule ^(.*)index(\.html|\.htm|\.php)$ http://%{HTTP_HOST} [R=301,L]

Убираем www в запросе

Чтобы со страницы www.kkmspb.ru шел постоянный (301) редирект на kkmspb.ru.

RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

Отдаем все файлы для скачивания, шрифты, картинки как есть

exe|xml|txt|rar|zip|css|js|jpg|jpeg|png|gif|ico|pdf|doc|docx|ttf|woff2|woff|eot|otf|svg