почему apache запрещает доступ по символическим ссылкам?

Я пытаюсь установить typo3 в соответствии с инструкциями, но мне нужно решить небольшую загадку. Кажется, apache отказывает в доступе к любым файлам, к которым я пытаюсь получить доступ через любую символическую ссылку в корневом каталоге сайта. Я изменил разрешения с SymLinksIfOwnerMatch на FollowSymLinks и не радуюсь. Я работаю над mac OSX (SL) и устанавливаю в каталог «Сайты» моего пользователя. Я могу получить доступ к любым файлам в этом каталоге CMS через веб-браузер, но не через символические ссылки.


person Dark Star1    schedule 03.06.2011    source источник
comment
Являются ли они абсолютными или относительными символическими ссылками? Не уверен, что это что-то изменит, но может.   -  person Blender    schedule 03.06.2011
comment
Я пробовал оба. Неважно, какого они типа.   -  person Dark Star1    schedule 03.06.2011
comment
Если вы добавили директиву FollowSymlinks через .htaccess, включили ли вы AllowOveride All для этого корня документа? В противном случае вы не можете изменить его.   -  person konsolenfreddy    schedule 05.06.2011


Ответы (2)


Я надеюсь, что комментарий konsolenfreddy уже был полезен. Я пытаюсь округлить вещи здесь:

  1. Сначала проверьте, работают ли символические ссылки с терминала и/или файловой системы в целом.
  2. Кроме того, если вы используете абсолютные пути, полный путь от корня до файла должен быть доступен для чтения пользователю Apache. *
  3. Если да, проверьте, установлен ли параметр AllowOverride для вашего веб-сервера (или применим ли он для виртуального хоста). Для отладки вы можете установить AllowOverride All либо в apache2.conf, httpd.conf или в доступные сайты/по умолчанию
  4. Если да, проверьте, активирован ли FollowSymlinks в каком-либо из файлов, отвечающих за ваш веб-сайт, начиная с apache2, работающего самостоятельно, и заканчивая файлами .htaccess.
  5. Попробуйте изменить права доступа к файлу символической ссылки и целевому каталогу (или файлам).
  6. Попробуйте создать свою символическую ссылку и посмотрите, что произойдет, когда вы вызовете ее в браузере.

* Проверьте этот ответ на сайте askubuntu.com, чтобы узнать больше. намеки.

person Mateng    schedule 27.06.2011
comment
+1. Возможно, стоит выделить отрывок the whole path from root to the file in question must be readable; Я застрял там на некоторое время. - person IsaacS; 03.01.2014

Хорошо, я в конце концов решил это. В OSX последним файлом, управляющим доступом к сайтам, установленным в пользовательских каталогах, является последняя строка Include в apache2/conf/extra/httpd-userdir.conffile. Как только я изменился, мои проблемы ушли. Спасибо всем, кто ответил на мои вопросы.

person Dark Star1    schedule 21.09.2011