[Решено] Apache2 - AllowOverride Forbidden, аномалия.

Автор Zerstoren, 23 января 2012, 13:53:48

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Zerstoren

Всем здравствуйте.
Хочу попросить помощи по вопросу веб сервера Apache2.

Дома на ноутбуке стоит Debian 6 х64 и у меня есть страшная проблема с которой борюсь уже 4й день, Апач взбесился.

Симптомы #1:
    все виртуальные сервера после перезагрузки системы упали в Access denien. Права проставлены правильно, 755 на директории и 644 на файлы.
    Апач отказывается читать .htaccess. Т.е. до самой директории с сайтом он не доходит даже.
    Все произошло после перезагрузки системы, ночью корректно потушил комп, а на след день посыпались проблемы.
    Для Апача я ничего в последний вечер не устанавливал.

Ладно, решил что проблема в самом Апаче, и полностью его снес и установил по новой.

Симптомы #2
     теперь Апач не может забиндить 80 порт, при том что этот порт ни кем не используется. Попытки подсоединиться по telnet 127.0.0.1 80, заканчивались неудачей т.к. нету слушателя.
    Всякие Skype и другие проги которые могут отобрать порт, отсутствуют на компе в корне.


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

ihammers

Цитата: Zerstoren от 23 января 2012, 13:53:48
Симптомы #2
     теперь Апач не может забиндить 80 порт, при том что этот порт ни кем не используется. Попытки подсоединиться по telnet 127.0.0.1 80, заканчивались неудачей т.к. нету слушателя.
    Всякие Skype и другие проги которые могут отобрать порт, отсутствуют на компе в корне.
Попробуем разобраться с данной проблемой.  Выдайте результат следующих команд:

netstat -an | grep ':80'
ps ax | grep apache
dpkg -l apache\*

Ну и напоследок
service apache2 restart
cat /var/log/apache2/error.log


PS: ИМХО снос apache2 был слишком кардинальным решением.
Debian GNU/Linux Stretch, kernel 4.9.0-5-amd64,
LXQt/KDE/OpenBox AMD Phenon X4 / 16Gb RAM / ATI HD7750 Silent
_______________________________
Debian GNU/Linux Stretch, kernel 4.9.0-5-amd64, LXQt/KDE/OpenBox
Acer Aspire One 722 AMD C60 / 4Gb RAM / ATI HD6290

Zerstoren

#2
netstat -an | grep ':80'

tcp        0      0 31.40.233.55:49595      81.177.139.133:80       TIME_WAIT 
tcp        0      0 31.40.233.55:49637      81.177.139.133:80       TIME_WAIT 
tcp        0      0 31.40.233.55:49641      81.177.139.133:80       TIME_WAIT 
tcp        0      0 31.40.233.55:43321      173.194.65.95:80        ESTABLISHED
tcp        0      0 31.40.233.55:57390      173.194.35.40:80        ESTABLISHED
tcp        0      0 31.40.233.55:49676      81.177.139.133:80       TIME_WAIT 
tcp        0      0 31.40.233.55:49642      81.177.139.133:80       TIME_WAIT 
tcp        0      0 31.40.233.55:49638      81.177.139.133:80       TIME_WAIT 
tcp        0      0 31.40.233.55:49630      81.177.139.133:80       TIME_WAIT 
tcp        0      0 31.40.233.55:49624      81.177.139.133:80       TIME_WAIT 
tcp        0      0 31.40.233.55:49652      81.177.139.133:80       TIME_WAIT 
tcp        0      0 31.40.233.55:49629      81.177.139.133:80       TIME_WAIT 
tcp        0      0 31.40.233.55:49659      81.177.139.133:80       TIME_WAIT 
tcp        0      0 31.40.233.55:49593      81.177.139.133:80       TIME_WAIT 
tcp        0      0 31.40.233.55:43372      209.85.148.138:80       ESTABLISHED
tcp        0      0 31.40.233.55:57391      173.194.35.40:80        ESTABLISHED
tcp        0      0 31.40.233.55:49618      81.177.139.133:80       TIME_WAIT 
tcp        0      0 31.40.233.55:49611      81.177.139.133:80       TIME_WAIT 
tcp        0      0 31.40.233.55:46211      74.125.232.223:80       ESTABLISHED
tcp        0    916 31.40.233.55:44857      74.125.232.248:80       FIN_WAIT1 
tcp        0      0 31.40.233.55:43320      173.194.65.95:80        ESTABLISHED
tcp        0      0 31.40.233.55:52277      199.7.59.190:80         ESTABLISHED
tcp        0      0 31.40.233.55:49603      81.177.139.133:80       TIME_WAIT 
tcp        0      0 31.40.233.55:43322      173.194.65.95:80        ESTABLISHED
tcp        0      0 31.40.233.55:49539      199.7.71.190:80         ESTABLISHED
tcp        0      0 31.40.233.55:43278      173.194.65.95:80        ESTABLISHED



ps ax | grep apache
3117 pts/1    S+     0:00 grep apache

dpkg -l apache\*

Желаемый=неизвестно[u]/установить[i]/удалить[r]/вычистить[p]/зафиксировать[h]
| Состояние=не[n]/установлен[i]/настроен[c]/распакован[U]/частично настроен[F]/
            частично установлен[H]/trig-aWait/Trig-pend
|/ Ошибка?=(нет)/требуется переустановка[R] (верхний регистр
в полях состояния и ошибки указывает на ненормальную ситуацию)
||/ Имя                 Версия           Описание
+++-======================-======================-============================================================
un  apache                 <none>                 (описание недоступно)
un  apache-common          <none>                 (описание недоступно)
un  apache-utils           <none>                 (описание недоступно)
ii  apache2                2.2.21-5               Apache HTTP Server metapackage
un  apache2-common         <none>                 (описание недоступно)
un  apache2-doc            <none>                 (описание недоступно)
un  apache2-mpm            <none>                 (описание недоступно)
un  apache2-mpm-event      <none>                 (описание недоступно)
un  apache2-mpm-itk        <none>                 (описание недоступно)
un  apache2-mpm-prefork    <none>                 (описание недоступно)
ii  apache2-mpm-worker     2.2.21-5               Apache HTTP Server - high speed threaded model
un  apache2-suexec         <none>                 (описание недоступно)
un  apache2-suexec-custom  <none>                 (описание недоступно)
ii  apache2-utils          2.2.21-5               utility programs for webservers
ii  apache2.2-bin          2.2.21-5               Apache HTTP Server common binary files
ii  apache2.2-common       2.2.21-5               Apache HTTP Server common files


При старте апач матюкается вот так

Apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
(98)Address already in use: : make_sockcould not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
Action 'start' failed.
The Apache error log may have more information.
failed!



cat /var/log/apache2/error.log

[Sun Jan 22 01:17:40 2012] [notice] Apache/2.2.21 (Debian) configured -- resuming normal operations
[Sun Jan 22 01:17:55 2012] [notice] caught SIGTERM, shutting down



Сообщение объединено: 24 января 2012, 00:35:03

Еще заметил такую особенность при ps ax | grep apache2

zerst@zerst-laptop:~$ ps ax | grep apache2
3816 pts/1    S+     0:00 grep apache2
zerst@zerst-laptop:~$ ps ax | grep apache2
3818 pts/1    S+     0:00 grep apache2
zerst@zerst-laptop:~$ ps ax | grep apache2
3820 pts/1    S+     0:00 grep apache2
zerst@zerst-laptop:~$ ps ax | grep apache2
3822 pts/1    S+     0:00 grep apache2
zerst@zerst-laptop:~$ ps ax | grep apache2
3824 pts/1    S+     0:00 grep apache2
zerst@zerst-laptop:~$ ps ax | grep apache2
3826 pts/1    S+     0:00 grep apache2
zerst@zerst-laptop:~$ ps ax | grep apache2
3829 pts/1    S+     0:00 grep apache2
zerst@zerst-laptop:~$ ps ax | grep apache2
3831 pts/1    S+     0:00 grep apache2
zerst@zerst-laptop:~$ ps ax | grep apache2
3833 pts/1    S+     0:00 grep apache2
zerst@zerst-laptop:~$ ps ax | grep apache2
3836 pts/1    S+     0:00 grep apache2

Он что постоянно запускается?

ihammers

#3
Цитата: Zerstoren от 24 января 2012, 00:28:32При старте апач матюкается вот так
Код: [Выделить]
Apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
(98)Address already in use: : make_sockcould not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
Action 'start' failed.
The Apache error log may have more information.
failed!
Apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
ServerName добавлен в apache2.conf?

Вывод:
grep 80 /etc/apache2/ -R

Сравни вывод с этими строками:
grep 80 /etc/apache2/ -R
/etc/apache2/sites-enabled/000-default:<VirtualHost *:80>
/etc/apache2/sites-available/default.dpkg-dist:<VirtualHost *:80>
/etc/apache2/sites-available/default:<VirtualHost *:80>
/etc/apache2/ports.conf:NameVirtualHost *:80
/etc/apache2/ports.conf:Listen 80


Отключите все виртуальные хосты в apache2 и оставьте только тот который по умолчанию ~000-defaul.  И выдайте старт apache2.


Цитата: Zerstoren от 24 января 2012, 00:28:32
cat /var/log/apache2/error.log
Код: [Выделить]

[Sun Jan 22 01:17:40 2012] [notice] Apache/2.2.21 (Debian) configured -- resuming normal operations
[Sun Jan 22 01:17:55 2012] [notice] caught SIGTERM, shutting down
Странно... очень мало информации в логах.

Цитата: Zerstoren от 24 января 2012, 00:28:32
Сообщение объединено: Сегодня в 03:35:03Еще заметил такую особенность при ps ax | grep apache2

zerst@zerst-laptop:~$ ps ax | grep apache2
3816 pts/1    S+     0:00 grep apache2
...
Он что постоянно запускается?
Это запуск утилиты grep, а не apache2.  Тут всё нормально.

Дополнительная информация: 1, 2
Debian GNU/Linux Stretch, kernel 4.9.0-5-amd64,
LXQt/KDE/OpenBox AMD Phenon X4 / 16Gb RAM / ATI HD7750 Silent
_______________________________
Debian GNU/Linux Stretch, kernel 4.9.0-5-amd64, LXQt/KDE/OpenBox
Acer Aspire One 722 AMD C60 / 4Gb RAM / ATI HD6290

orlyanuch

ЦитироватьЕще заметил такую особенность при ps ax | grep apache2

zerst@zerst-laptop:~$ ps ax | grep apache2
3816 pts/1    S+     0:00 grep apache2

Он что постоянно запускается?

Чтобы не путаться, надо вот так:
$ ps ax | grep -v grep | grep apache2
Edimus, ut vivamus; nоn vivimus, ut edamus.

Zerstoren

Вот ненавижу когда, что-то происходит само собой.
Сегодня Апач запустился отлично.

Виновник найден в httpd.conf.
Listen 80

Но Access Denied остался прежний.

Виновника рождества нашел.
        AllowOverride All

В общем директива отвечает за .htaccess, в случае None все работает, кроме .htaccess. В случае All 403.
Перегуглил уже весь инет, успел даже через поиск попасть в этот топик. Но решения проблемы не нашел.

Права в порядке, гугл уже перевернуть успел

ihammers

Цитата: Zerstoren от 25 января 2012, 03:22:58
Вот ненавижу когда, что-то происходит само собой.
Сегодня Апач запустился отлично.

Виновник найден в httpd.conf.
Listen 80

Но Access Denied остался прежний.

Виновника рождества нашел.
        AllowOverride All

В общем директива отвечает за .htaccess, в случае None все работает, кроме .htaccess. В случае All 403.
Перегуглил уже весь инет, успел даже через поиск попасть в этот топик. Но решения проблемы не нашел.

Права в порядке, гугл уже перевернуть успел
Если ответ найден, то ставьте [РЕШЕНО] в названии темы.
Debian GNU/Linux Stretch, kernel 4.9.0-5-amd64,
LXQt/KDE/OpenBox AMD Phenon X4 / 16Gb RAM / ATI HD7750 Silent
_______________________________
Debian GNU/Linux Stretch, kernel 4.9.0-5-amd64, LXQt/KDE/OpenBox
Acer Aspire One 722 AMD C60 / 4Gb RAM / ATI HD6290

Zerstoren

Не решено, директива AllowOverride нужна с параметром All. Т.к. .htaccess мне таки нужен.
Буду продолжать гуглить.

ihammers

Цитата: Zerstoren от 25 января 2012, 11:54:53
Не решено, директива AllowOverride нужна с параметром All. Т.к. .htaccess мне таки нужен.
Буду продолжать гуглить.
Ясно, тогда пару вопросов.  Какие модули включены?

Используется ли директива в параметрах виртуальных хостов?
AccessFileName .htaccess
Debian GNU/Linux Stretch, kernel 4.9.0-5-amd64,
LXQt/KDE/OpenBox AMD Phenon X4 / 16Gb RAM / ATI HD7750 Silent
_______________________________
Debian GNU/Linux Stretch, kernel 4.9.0-5-amd64, LXQt/KDE/OpenBox
Acer Aspire One 722 AMD C60 / 4Gb RAM / ATI HD6290

Zerstoren

#9
Эта директива вписана в Apache2.conf, но не в httpd.conf
Когда приеду домой, я попробую скопипастить все конфиги с компа на работе.

А включен стандартный набор

alias.conf          authz_groupfile.load  cgi.load      env.load          php5.conf        setenvif.conf
alias.load          authz_host.load       deflate.conf  mime.conf         php5.load        setenvif.load
auth_basic.load     authz_user.load       deflate.load  mime.load         reqtimeout.conf  status.conf
authn_file.load     autoindex.conf        dir.conf      negotiation.conf  reqtimeout.load  status.load
authz_default.load  autoindex.load        dir.load      negotiation.load  rewrite.load

Сравнивал с работающим сервером. Одинаково все.

Сообщение объединено: 26 января 2012, 01:26:07

Заработало. Но опять  >:(, оно произошло почти само собой. Поспав и подумав до меня дошло.
Когда мы вызываем страницу, апач начинает искать все директивы .htaccess, начиная от корня системы, заканчивая папкой откуда вызывался скрипт.

Сначала он ищет
/.htaccess
Потом
/var/.htaccess
/var/www/.htaccess #Вот тут он нашел .htaccess но доступ к нему получить не смог.


В общем, я нашел в /var/www файл .htaccess, который стоял с такими правами, что Dolphin не смог определить, что за права.
Как только, я поставил права именно на .htaccess лежавший в /var/www все встало на свои места.

Ставлю в "Решено", но топ не закрываю, мало ли закрываю, у меня вопросы исчерпаны, собственно как и проблема.
Заголовок изменяю, чтоб в поисковике была еще 1на ссылка с возможной причиной проблемы.