Назад | Перейти на главную страницу

Символическая ссылка Apache 2 не разрешена или цель ссылки недоступна

Хотя заголовок этого вопроса соответствует уже заданному вопросу, в моем случае я уже установил Options +FollowSymLinks.

Настройка следующая: моя настройка хостинга включает htdocs/ каталог, который является корневым каталогом документов по умолчанию для веб-сайтов HTTP и htdocs-secure это для HTTPS. Они предназначены для сайтов, которым нужна другая версия HTTPS.

Если оба используют одни и те же файлы, я создаю ссылку с htdocs-secure на htdocs с помощью ln -s htdocs htdocs-secure но вот и проблема! Журнал все еще говорит Symbolic link not allowed or link target not accessible: /path/to/htdocs-secure

Фрагмент Vhost

    Header always set Strict-Transport-Security "max-age=500"
    DocumentRoot /path/to/htdocs-secure
    <Directory "/path/to/htdocs-secure">
        allow from all
        Options +FollowSymLinks
    </Directory>

Думаю, это правильная установка. HTTP-версия сайта доступна, поэтому это не похоже на проблему с разрешением.

Как это исправить?

[Добавить] другая информация: я использую MPM-itk и установил AssignUserId владельцу / группе обоих каталогов

Я предполагаю, что эта проблема связана с тем, что ваш DocumentRoot уже есть символическая ссылка. Следовательно <Directory> предложение не будет соответствовать, так как настоящего каталога с таким именем нет, только символическая ссылка. Возможно вы можете установить FollowSymLinks вариант для /path/to, но вам нужно будет попробовать, работает ли это.

Есть ли причина против того, чтобы htdocs каталог сам DocumentRoot и для HTTP, и для HTTPS? В конце концов, когда вы создаете символическую ссылку на них, они всегда будут выглядеть одинаково, так что вы можете в первую очередь использовать один и тот же каталог.