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

Использовать .htaccess для перенаправления на подкаталог корневого веб-каталога с символической ссылкой?

Я пытаюсь использовать Envoyer.io для развертывания своего кода, и у меня возникают некоторые проблемы.

Эта утилита создает две папки, current и releases. current символические ссылки на последний выпуск в releases папка.

Итак, моя структура каталогов выглядит так:

Мне нужно, чтобы все запросы отправлялись в current/public каталог, что делает его корневым веб-сайтом, а не public_html.

Я пробовал очевидный вариант установки моего веб-рута на public_html/current/public, но тогда я столкнулся с ошибкой: Symbolic link not allowed or link target not accessible: /home/mysite/public_html/current

Я пробовал варианты Options +FollowSymLinks в моем .htaccess файл здесь не повезло. Я считаю, что не могу получить доступ к файлам конфигурации Apache, поскольку это общий хост.

Буду признателен за любые рекомендации по этому поводу.

Не могу не повторяться:

Большинство людей, использующих .htaccess и спросить об этом на ServerFault не следует использовать .htaccess в первую очередь, поскольку это решение для конечного пользователя, которое никогда не предназначалось для администраторов:

Вам следует избегать использования .htaccess файлы полностью если у вас есть доступ к файлу конфигурации главного сервера httpd. С помощью .htaccess files замедляет работу вашего HTTP-сервера Apache. Любая директива, которую вы можете включить в .htaccess файл лучше установить в блоке каталога, так как он будет иметь тот же эффект с лучшей производительностью.
Больше в Apache руководство

Чтобы иметь возможность использовать FollowSymlinks директива в .htaccess файл конфигурации основного сервера должен разрешить это, установив AllowOverride All или когда используется немного менее щедрый параметр, параметр должен быть явно включен с помощью AllowOverride Option=FollowSymlinks директива, поскольку она не является частью группировки по умолчанию AuthConfig, FileInfo, Indexes или Limit.