LM 17 и XAMPP

/ Просмотров: 3269

или маленькая драма о потерянном времени, человеческой глупости и правах доступа.

Стыдно признаваться в собственной глупости, но, говорят, полезно...

Прошло несколько дней после установки LM 17 "Qiana" Cinnamon, первые, самые неотложные дела сделаны, настало время установить XAMPP и развернуть свои виртуальные хосты.

Процедура, описанная мной в трех частях (1, 2 и 3), проста и не занимает много времени, даже если ее приходится проводить впервые, "с нуля". А если иметь заготовки настраиваемых файлов (/etc/hosts, /opt/lampp/etc/httpd.conf и /opt/lampp/etc/extra/httpd-vhosts.conf) плюс бэкапы виртуальных хостов, то вообще можно легко уложиться в пять минут с перекуром. Тем более, что всё это неоднократно и без малейших проблем делалось в разное время и на разных ОСях (Linux Mint с 11 по 16, Росинках 9, 11 и 13, Убунтах, включая Runtu и Matuntu, Арче, Bodhi и уж не помню, на чем еще).

А в LM 17 вдруг случился облом.

То есть сам XAMPP 1.7.7 заработал без проблем, но любая попытка открыть локальные сайты приводила к 403 ошибке.

Ничего, подумал я бодро, и не таких утаптывали, проверил права на ~/www, увеличил их, потом сделал максимальными рекурсивно... Ни фига. Тут я достал все свои любимые бубны, включил методы научного и антинаучного тыков и взялся за дело всерьез. Чего ж я только не делал, кое о чем даже вспоминать неловко...

Истинную правду сказал кто-то из великих: человек готов на всё – на тяжкий труд, на суровые лишения, даже на подвиг – лишь бы не думать. К исходу этого погубленного свободного дня я наконец признал, что крепко подумать – это последнее, что мне осталось. И после получаса напряженной дедукции мои виртуальные хосты заработали как миленькие.

Чтобы стало понятно, в чем была засада, мне придется кратко рассказать о том, как я устанавливал LM 17. Корневой раздел был задан обычным порядком, а домашняя директория использовалась от снесенной Росинки-9 и не форматировалась. Естественно, в ней были удалены или временно переименованы все скрытые и системные файлы и каталоги, чтобы не создать в установленной системе кашу из старых и новых настроек.

И был тут еще один нюанс: этот домашний росинковский каталог был примонтирован (через fstab) в /mnt LinuxMint 16 "Petra", каковая ОСь стоит вообще на другом диске.

Увидев такое дело, инсталлятор Кианы почесал свою цифровую репу и мудро решил сделать мне такую структуру домашнего каталога:

/
  ../home
        .../%USER%
        .../%OLD_USER%
        .../lost+found

где, как вы понимаете, %USER% – мой новый логин в LM 17, а %OLD_USER% – старый логин в Росинке-9.

Подивившись хитроумности инсталлятора, я, недолго думая, переместил содержимое /%OLD_USER% в /%USER%, после чего пустой уже каталог /%OLD_USER% удалил. К каким это проблемам привело – отдельный разговор, сейчас не об этом речь, тем более что все они уже решены. Но чего я никак не мог ожидать (даже хорошо подумавши) и с чем никогда не сталкивался – так это нестандартные права на каталог /home/%USER%.

Теперь, задним числом, я могу сказать, чтó нужно было сделать сразу же, столкнувшись с ошибкой 403.

Известно, что она означает недостаточность прав. Попытка увеличить права на ~/www и вложенные файлы/каталоги уже была глупостью: на других-то системах никто ничего такого не требовал. Но ладно, глупость еще простительная: не мешало проверить, не замешаны ли здесь какие-нибудь новые фишки ОСи.

А вот дальше нужно было не метаться как угорелому, правя настройки, которых никогда не трогал, переустанавливая XAMPP, сличая vimdiff'ом файлы чуть ли не пробел в пробел, не гонять на гугле по всему миру, – а просто посмотреть на то, что лежало прямо перед носом, в логах XAMPP.

Там повторялась странная строка:

[Thu Jun 04 13:24:54 2014] [crit] [client 127.0.0.1] (13)Отказано в доступе: /home/%USER%/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable

Постойте, какой такой /home/%USER%/.htaccess?! Нет у меня и быть не может такого файла! – вот что должен был сказать мне мой внутренний голос. Прямой вывод из этой фантазии апача: он вообще не видит того, что внутри моей домашней директории.

И верно, оказалось что права на /home/%USER%/ не 755, как положено, а 750! То есть запись для группы и все действия для остальных запрещены.

Даже удивительно, что шило еще не вылезло из мешка по какому-нибудь другому поводу (впрочем, система работает всего ничего, так что всё еще было впереди).

Естественно, после чмода домашней директории на 755 и перезапуска XAMPP все мои виртуальные хосты мгновенно заработали.

Осталось оплакивать впустую потраченное время и утешаться хотя бы небольшим приобретенным по ходу опытом.

Я бы сформулировал его так: если затеваешь что-либо не стандартное, будь готов к тому, что и система ответит тебе тем же. Утрой внимание и проверь результаты своих действий "не отходя от кассы", пока ничего не забылось.

Комментариев: 10 RSS
Асым из Мордовии1
2014-09-26 в 12:04:09

Бывает и так! Звонит внучка, говорит, не загружается браузер, интернет есть. Приезжаю, включаю компьютер, подключаю интернетю, запускаю браузер Опера, через минуту сброс и запись. разумеется на английском, в переводе означает проблема в реестре. Звоню тех помощь, там говорят ощибка в настройках. Перенастроил интернет, повторяеется то же самое. Вот думаю, переустонавить или подождать, может восстановиться. ОС, линукс минт 9, интернет прямой без модема. Может кто подскажет, как решить проблему. Сам начинающий. Если найдется знаток помоч, буду рад общаться по емайлу. Спасибо.

Попробуйте поискать помощи на одном из линукс-форумов, их не мало: http://www.mintlinux.ru/forum, http://rosinka.rosix.ru/ или http://forum.ubuntu.ru/ и другие. Только учтите, что вопрос в том виде, в каком Вы задали его мне, там не найдет отклика. Существуют определенные правила, как описать свою проблему, чтобы Вам попытались помочь, эти правила есть на каждом форуме.

Алексей3
2015-04-07 в 16:24:03

Подскажите пожалуйста, у меня тоже ошибка 403 но в логах написано [Tue Apr 07 16:19:48.142177 2015] [core:crit] [pid 10956] (13)Permission denied: [client 127.0.0.1] AH00529:/opt/lampp/htdocs/online/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable and that '/opt/lampp/htdocs/online/' is executable

В чем может быть дело?

По-видимому, у Вас совсем другое расположение виртуальных сайтов, чем то, о котором шла речь в заметках "XAMPP for Linux: организация и настройка виртуальных хостов": 1, 2 и 3
Поэтому могу лишь предположительно гадать, в чем проблема конкретно. Но в любом случае надо начинать с двух вещей:

1) проверить права на весь путь (по цепочке снизу вверх) до расположения виртуальных хостов
и
2) проверить правильность записей в файле /opt/lampp/etc/extra/httpd-vhosts.conf, где прописаны пути и разрешения.

Саруман5
2015-05-24 в 04:01:26

Здравствуйте! Столкнулся с аналогичной проблемой! сделал так как вы, но потом появился злой лог:

[Sun May 24 03:48:44.975007 2015] [include:warn] [pid 10938] [client 127.0.0.1:60504] AH01374: mod_include: Options +Includes (or IncludesNoExec) wasn't set, INCLUDES filter removed: /index.html

я так понимаю какой-то фильтр удаляет файл хтмл

закинул туды index.php - все гуд работает

Прошу помощи я новичок в линуксе

Никогда не сталкивался с такой проблемой. При первом же поверхностном гуглении выскочила вот эта багзилла: https://bz.apache.org/bugzilla/show_bug.cgi?id=33089

Неважно, что Вы новичок в Linux, поскольку это проблема конфигурации сервера апаче, а не ОС. Для начала на всякий случай проверьте права на файлы и папки виртуального сайта, в том числе на index.html, внимательно просмотрите .htaccess своего виртуального сайта, если же ничего не обнаружится, то придется вникать в тонкости конфигурационных файлов (прежде всего /opt/lampp/etc/httpd.conf), разбираясь с тем, что понаписали по вышеприведенной ссылке товарищи по несчастью.

Саруман7
2015-05-24 в 14:06:47

admin, запахло какой-то магией, сегодня включил комп, запустил сервер, положил index.html и все работает. Никаких логов типа

[Sun May 24 03:48:44.975007 2015] [include:warn] [pid 10938] [client 127.0.0.1:60504] AH01374: mod_include: Options +Includes (or IncludesNoExec) wasn't set, INCLUDES filter removed: /index.html

нету

В высокотехнологичном мире без магии -- никак smile

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

Установил XAMPP (mint serena), сделал виртуальные хосты, попытался ставить joomla, установщик не доволен - не создается configuration.php, не удаляется папка installation, не ставятся языковые файлы, понимаю, что все уперлось в права, поставил 777 - работает без вопросов, но это же неправильно.

Все снес и попробовал сделать с нуля под root-ом все операции

в папке /opt/lampp/htdocs создал папку, скопировал в нее дистрибутив Joomla и распаковал, все под рутом, запустил, Firefox начал установку, дошел до проверки и опять configuration.php не создается.

что не так? где искать?

К сожалению, вряд ли сумею помочь толковым советом: с джумлой вообще не имел дела лет пять, а сейчас, на LM 18, у меня и XAMPP еще не установлен.

Кстати, вполне возможно, что требуются права 777. Хотя это, как Вы заметили, неправильно, но таковы запросы некоторых CMS.

Посмотрите особенно внимательно, каковы права на каталог, где должен создаваться configuration.php и кто владелец этого каталога.

Оставьте комментарий

Комментарий будет опубликован после проверки

(обязательно)