Htaccess не работает: apache — Не работает .htaccess

apache — Не работает .htaccess

Задать вопрос

Вопрос задан

Изменён 3 года 6 месяцев назад

Просмотрен 5k раз

Не работает переадресация всех запросов на index.php и выдает ошибку, как я понял, то проблема в том, что апач не учитывает настройки моего файла .htaccess.

Вот настройки апача из файла настройек httpd.conf

ServerRoot "c:/Server/bin/Apache24"
Listen 80
LoadModule access_compat_module modules/mod_access_compat.so
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule allowmethods_module modules/mod_allowmethods.so
LoadModule asis_module modules/mod_asis.
so LoadModule auth_basic_module modules/mod_auth_basic.so LoadModule authn_core_module modules/mod_authn_core.so LoadModule authn_file_module modules/mod_authn_file.so LoadModule authz_core_module modules/mod_authz_core.so LoadModule authz_groupfile_module modules/mod_authz_groupfile.so LoadModule authz_host_module modules/mod_authz_host.so LoadModule authz_user_module modules/mod_authz_user.so LoadModule autoindex_module modules/mod_autoindex.so LoadModule cgi_module modules/mod_cgi.so LoadModule dir_module modules/mod_dir.so LoadModule env_module modules/mod_env.so LoadModule include_module modules/mod_include.so LoadModule isapi_module modules/mod_isapi.so LoadModule log_config_module modules/mod_log_config.so LoadModule mime_module modules/mod_mime.so LoadModule negotiation_module modules/mod_negotiation.so LoadModule rewrite_module modules/mod_rewrite.so LoadModule setenvif_module modules/mod_setenvif.so <IfModule unixd_module> User daemon Group daemon </IfModule> ServerAdmin admin@example.
com ServerName localhost DocumentRoot "c:/Server/data/htdocs/" <Directory /> Options Includes Indexes FollowSymLinks AllowOverride All Allow from all </Directory> <Directory "c:/Server/data/htdocs/"> Options Indexes FollowSymLinks AllowOverride All Allow from all </Directory> <IfModule dir_module> DirectoryIndex index.html index.htm index.shtml index.php </IfModule> <Files ".ht*"> Require all denied </Files> ErrorLog "logs/error.log" LogLevel warn <IfModule log_config_module> LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined LogFormat "%h %l %u %t \"%r\" %>s %b" common <IfModule logio_module> LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio </IfModule> CustomLog "logs/access.log" common </IfModule> <IfModule alias_module> ScriptAlias /cgi-bin/ "c:/Apache24/cgi-bin/" </IfModule> <Directory "c:/Apache24/cgi-bin"> AllowOverride None Options None Require all granted </Directory> <IfModule mime_module> AddType application/x-httpd-php .
(.*)$ index.php/$1 [L] RewriteBase /siteroot/

Зарегистрируйтесь или войдите

Регистрация через Google

Регистрация через Facebook

Регистрация через почту

Отправить без регистрации

Почта

Необходима, но никому не показывается

Отправить без регистрации

Почта

Необходима, но никому не показывается

Нажимая на кнопку «Отправить ответ», вы соглашаетесь с нашими пользовательским соглашением, политикой конфиденциальности и политикой о куки

Заметки о Microsoft Windows и не только…

Posted on 20. 11.2022 by airmeno Linux 0

WireGuard — это бесплатный, современный и быстрый VPN с открытым исходным кодом и современной криптографией, поддерживающий соединения IPv4 и IPv6. Он проще, быстрее, чем IPSec и OpenVPN.

Для сравнения, OpenVPN и IPSec, использует TLS и сертификаты для аутентификации и установления зашифрованных туннелей между системами. Различные версии TLS включают поддержку сотен различных криптографических наборов и алгоритмов, и хотя это обеспечивает большую гибкость, это также делает настройку VPN, использующей TLS, более сложной и подверженной ошибкам.

Continue reading…

Posted on 02.11.2021 by airmeno Linux Windows Заметки 2

Подсистема Windows для Linux или Windows Subsystem for Linux (WSL) позволяет запускать среду GNU/Linux для разработки или отладки прямо в среде Windows без использования сред для вирутализации и установки ОС Linux.

Continue reading…

Posted on 10.09.2021 by airmeno Linux 0

Сегодня балансировка трафика и нагрузки достаточно распространенная практика. По сути балансировщик решает задачу горизонтального масштабирования доступа к приложениям и сервисам, предоставляя единую точку доступа.

HAProxy одна из самых популярных программ для балансировки нагрузки, обеспечивающая высокую доступность и проксирование. HAProxy программа с открытым исходным кодом.

HAProxy однопоточный, неблокирующий, событийный балансировщик с проверкой состояния. Умеет балансировать TCP (не только веб трафик), HTTP/HTTPS в режиме реверс прокси. Балансирует на уровне L4/L7.

HAProxy архитектурно не требователен к ресурсам сервера, работает в режиме одного потока, реагируя на события (запросы) и пересылая запрос на соединение на сервера служб.

Continue reading…

Posted on 27. 05.2021 by airmeno Linux Виртуализация Заметки Серверы 0

В данной заметке рассматривается вопрос быстрого поднятия гипервизора Qemu-KVM на базе CentOS 7 с удобным управлением сервера. В качестве интерфейса управления будет Cockpit.

Cockpit по умолчанию включен в CentOS 8, но его нет в 7-ке.

Итак, имеем сервер с установленным CentOS 7, включен Firewall и SELinux.

Continue reading…

Posted on 30.03.2021 by airmeno Docker 0

Когда стоит задача по построению среды с требованиями к отказоустойчивости, масштабируемости и возможности распределения нагрузки, то конечно смотришь на системы кластеризации. Если речь идет еще и о контейнерной кластеризации, то выбор в сторону систем оркестрации контейнеров.

Оркестровка — это управление и координация взаимодействия контейнеров.

Docker Swarm является стандартным инструментом кластеризации для Docker. Хосты Docker объединяются в один последовательный кластер, называемый Swarm. Docker Swarm обеспечивает доступность и высокую производительность работы, равномерно распределяя ее по нодам Docker внутри кластера. Это очень похоже на кластеры Kubernetes, а может и наоборот.

Continue reading…

Posted on 23.03.2021 by airmeno Windows Server Серверы 1

Продолжая тему Windows Deployment Services, рассмотрим возможность загрузить на сервер свой подготовленный образ системы.

Имеем систему «добровольца» с необходимыми предустановленными обновлениями и ПО.

Continue reading…

Posted on 22.03.2021 by airmeno Windows Server Серверы 0

Для компаний, где есть потребность в быстром развертывании систем с предустановленными настройками или даже просто быстрой установки (переустановки) системы на голое железо, подобные системы просто незаменимы.

Сложность в данном случае заключается в содержании в актуальном состоянии раздаваемых образов операционных систем.

Continue reading…

Posted on 26.02.2021 by airmeno Linux Серверы 2

Как бы мы не уходили от понятия железа в облака, если есть в локальной сети серверное оборудование, то сразу возникает вопрос как бороться с перепадами и стабильностью напряжения и как быть когда пропадает питание в сети?

Решение обычно — это развертывание некой системы, которая обеспечит управление мягким отключением питания нашего оборудования. Как правило, производители систем бесперебойного питания (ИБП) имеют свою системы, но не всегда они бесплатны и доступны, например для простых моделей.

Continue reading…

Posted on 04.02.2021 by airmeno VMware Заметки 0

VMware ESXi не дает возможности установить zabbix-agent для настройки мониторинга через агента, но Zabbix может пользоваться SOAP протокол для обмена информацией через XML.

Continue reading…

Posted on 25.12.2020 by airmeno Linux Заметки 0

Речь не пойдет о восстановлении обычных файлов, которые были удалены и теперь вдруг захотелось вернуть. Для этого есть свои инструменты.

Речь пойдет о файлах на которые ссылаются процессы в Linux и при удалении этих файлов ссылка на данные файлы из процесса никуда не исчезают. Например, есть процесс, который пишет свой лог в определенный файл и пока процесс активен, он будет писать свои данные в указанный файл, даже тогда когда файл лога будет удален. Или же другой пример, у вас идет потоковая запись аудио/видео и вы удалили файл. Как восстановить?

Continue reading…

Fix htaccess не читается

/ Niket Pathak / 2 минуты чтения

Метки apache2htaccess

Вы пытаетесь настроить проект с относительными URL-адресами только для того, чтобы обнаружить, что браузер отображает необъяснимую ошибку (« страница не найдена » или известная ошибка « localhost не работает »). Вы убедитесь, что правила в htaccess верны. Все то же самое. Внезапно до вас доходит — возможно, htaccess читается неправильно или вообще не читается! Ну, ты не можешь быть более прав!

Как исправить нечитаемый htaccess?

Оказывается, файл htaccess должен быть включен (по умолчанию он не включен). Это можно сделать в 2 простых шага —


1. Включение файла htaccess —

Чтобы включить htaccess, вам необходимо обновить конфигурацию apache .
Чтобы найти файл конфигурации Apache, вы можете использовать следующие команды —

// Получить абсолютный путь к Apache
$пс-эф | grep апач
апач 12846 14590 0 окт20 ? 00:00:00 /usr/sbin/apache2

// Получаем рут и имя конфиг файла
$ /usr/sbin/apache2 -V | grep HTTPD_ROOT // /etc/apache2/
$ /usr/sbin/apache2 -V | grep SERVER_CONFIG_FILE // apache2. conf
 

Как видно, наш файл конфигурации находится по адресу /etc/apache2/apache2.conf
(Для некоторых общих хостов файл конфигурации можно найти с помощью httpd -V или apache2ctl -V вместо команд)
Откройте файл конфигурации Apache и внесите в него изменения —

Изменить AllowOverride Нет

<Каталог /var/www/html/>
        Индексы опционов FollowSymLinks
        Аллововеррайд
        Требовать все предоставленные

 

Разрешить переопределение всех .

<Каталог /var/www/html/>
        Индексы опционов FollowSymLinks
        Разрешить переопределить все
        Требовать все предоставленные

 

Это в основном позволяет правилам, записанным в файле htaccess с по , переопределять правила маршрутизации для этого каталога ( /var/www/html/ ). Обратите внимание, что /var/www/html — это корневой веб-узел по умолчанию для Ubuntu 14.x и выше. Это может быть другим / настроенным в соответствии с проектом.

2. Включить перезапись модуля –

Вы можете включить перезапись модуля, выполнив в терминале следующее:

$ sudo a2enmod переписать
 

После этого перезапустите apache , чтобы новые изменения вступили в силу.

$ sudo service apache2 перезапустить
$ sudo systemctl перезапустить apache2 // альтернативный способ
 

Так и должно быть. Обновление вашей страницы должно начать работать правильно в соответствии с правилами, определенными в вашем файле htaccess.


Бонус

Вот обширный список фрагментов htaccess , которые я нашел очень полезными, и вы могли бы тоже — https://github.com/phanan/htaccess

Вы также можете проверить синтаксическую правильность вашего htaccess с помощью любого онлайн-инструмента проверки htaccess . Вот один, если это вас интересует — http://www.htaccesscheck.com/


Ссылки
  • https://stackoverflow.com/questions/12202021/lost-httpd-conf-file-located-apache
  • https://www.sitepoint.com/community/t/applying-rewriteengine-on-in-htaccess
  • https://stackoverflow.com/questions/how-to-enable-mod-rewrite-for-apache
  • https://www.keycdn.com/support/htaccess-not-working
  • https://askubuntu.com/questions/enabling-htaccess-file-to-rewrite-path-not-working
  • https://docs.bolt.cm/howto/making-sure-htaccess-works
  • https://www.digitalocean.com/community/tutorials/how-to-rewrite-urls-with-mod_rewrite

Надеюсь, это помогло! 🙂
Ура.

.htaccess не работает (apache2 | Ubuntu 18.04)

Задавать вопрос

спросил

Изменено 2 года, 9 месяцев назад

Просмотрено 7к раз

, ребята, сайт работает нормально, только файл . htaccess не работает, я много гуглил, уже включил a2enmod rewrite и перепробовал много всего, но это не сработало.

obs: я использую веб-сайт example.com в качестве примера

вот как мой /etc/apache2/sites-available/000-default.conf :

 
    Администратор сервера [email protected]
    Имя сервера example.com
    Псевдоним сервера www.example.com
    DocumentRoot /var/www/example.com/public_html
    Журнал ошибок ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log вместе

 

и вот как мой /etc/apache2/apache2.conf это:

 <Каталог />
        Параметры
        Разрешить переопределить все
        Требовать все отказано

<Каталог /usr/share>
        Аллововеррайд
        Требовать все предоставленные

<Каталог /var/www/>
        Индексы опционов FollowSymLinks
        Аллововеррайд
        Требовать все предоставленные

 

вот как выглядит мой . htaccess:

 #DISALOW СПИСОК КАТАЛОГА
Параметры - Индексы
ErrorDocument 400 /.error.php
ErrorDocument 401 /.error.php
Документ об ошибке 403 /403.php
Документ об ошибке 404 /404.php
ErrorDocument 405 /.error.php
ErrorDocument 408 /.error.php
ErrorDocument 414 /.error.php
ErrorDocument 500 /500.php
ErrorDocument 502 /.error.php
ErrorDocument 504 /.error.php
 

, но это не запрещает список каталогов и не показывает содержимое в 404.php , когда страница не найдена.

  • apache2
  • .htaccess

3

Текущая настройка директивы AllowOverride по умолчанию вызывает вашу проблему. Если вы хотите разрешить переопределение всего возможного файлом .htaccess для определенного виртуального хоста, вам необходимо изменить его конфигурацию следующим образом:0007

 кот /etc/apache2/сайты-доступные/000-default.conf
 
 <Виртуальный хост *:80> Администратор сервера admin@example.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *