В Linux Fedora 15 Apache не следует символическим ссылкам, и они не отображаются в индексе каталогов ... Вы можете мне помочь, почему?
Просто упомяну, что в httpd.conf у меня есть:
<Directory />
Options FollowSymLinks
</Directory>
Кроме того, пользователь и группа, определенные в httpd.conf, являются владельцами соответствующих каталогов, в которых сохраняется веб-приложение ...
Вы можете сказать мне, что я делаю не так? Заранее спасибо!!!
ОБНОВИТЬ: Возникла проблема из-за того, что цель находится на другом жестком диске?
ОБНОВЛЕНИЕ 2: он следует по символическим ссылкам, но по этой ссылке по какой-то причине не переходят. Он указывает на каталог на другом жестком диске.
ОБНОВЛЕНИЕ 3: после первого направления нет «ничего особенного», то есть:
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
Убедитесь, что Apache также имеет разрешение на чтение в каталоге, на который указывает ссылка. Недостаточно дать разрешение на чтение для самой ссылки.
Если только эта ссылка является проблемой, это заставляет меня думать, что проблема заключается в ссылке, а не в конфигурации Apache. Вы уверены, что он не сломан или целевой диск установлен неправильно? Для файла на отдельном диске ls -l
должен показать, например:
-rw-r--r-- 1 user group size date time link_name -> /drive/mount/point/path/to/file/file_name
Если это не так, вам следует переделать ссылку, используя:
rm link_name
ln -s /drive/mount/point/path/to/file/file_name link_name
Если ссылка указывает в нужное место, возможно, целевой диск не смонтирован. Переустановите его и попробуйте еще раз. Удачи!
Я знаю, что очень опаздываю на этот вопрос, но, возможно, я смогу помочь кому-то другому. У меня была та же проблема, и я наконец ее решил: вам нужно изменить разрешения всех родительских каталогов цели вашей символической ссылки. В моем случае - например, - ссылка указывала на / run / media / username / device / subdirectory / target (я использую Arch Linux). Поэтому мне нужно было изменить права доступа к «имени пользователя» и «подкаталогу» (остальные должны работать по умолчанию):
setfacl -m "u:http:r-x" /run/media/username/device/subdirectory
setfacl -m "u:http:r-x" /run/media/username
Для последнего вам нужны права root (и, конечно же, http - это пользователь httpd, определенный в httpd.conf).