Это одновременно пост для памяти и шпаргалка.
Бывает так: делаешь сайт, переносишь его на хостинг, а там ррраз - 403я ошибка “Forbidden”.
Что это значит? А то, что веб-сервер не может получить доступ к какому-то нужному файлу. Дальше возможно 2 варианта.
нет доступа к файлу на уровне ОС. Многие хостинг-провайдеры при заливке файла ставят ему минимальные права (запись и чтение только для владельца + настройки ftp так, что владельцем становится текущий пользователь).
Лечится достаточно просто: на нужный файл выставляются права на чтение для группы и для всех (если надо, чтобы файл был “виден” в Интернет).нет доступа на уровне ограничений веб-сервера apache. Напомню, что доступ на уровне веб-сервера регулируется файлами .htaccess. Там прописывается, что веб-серверу можно, что - нельзя смотреть. Если (внезапно) нет доступа к чему-то, то есть смысл посмотреть на то, что написано в .htaccess. Если его нет в текущей директории - есть смысл посмотреть .htaccess в директориях выше по иерархии.
Комбинацией этих вариантов является ситуация, при которой в .htaccess все написано верно, но доступ к самому .htaccess ограничен на уровне ФС.
Поэтому с некоторых пор я, если получаю 403ю, первым дело проверяю права на .htaccess.