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

Доступ к каталогам вне DocumentRoot

Недавно я развернул веб-приложение на своем сервере Linux Redhat, используя Capistrano который создает следующую структуру каталогов в корне документа сайта:

/var/www/html/example.com/releases/*
/var/www/html/example.com/current

Чтобы загрузить текущий каталог при загрузке страницы, я изменил свой httpd.conf так, чтобы DirectoryRoot example.com был установлен на /var/www/html/example.com/current. Проблема в том, что я хочу, чтобы для просмотра были доступны определенные каталоги, которые находятся за пределами «текущего» каталога (phpMyAdmin и Bugzilla). я пробовал touchдобавление файла .htaccess в /var/www/html/example.com но ничего не создается ...

Что мне нужно сделать, чтобы получить доступ к каталогам, расположенным за пределами моего DocumentRoot? Следует ли мне изменить DocumentRoot и использовать .htaccess для перенаправления веб-браузера в мой текущий каталог или есть лучший подход?

Кроме того, как неважный побочный вопрос: разумно ли использовать определенный порт для определенных служб? Когда я использовал cPanel, они использовали: 2082 и WHM: 2086. Могу ли я сделать то же самое на своем сервере, чтобы сделать службы (phpMyAdmin и Bugzilla) более скрытыми?

Вы захотите использовать Псевдоним чтобы предоставить доступ к каталогам за пределами вашего текущего DocumentRoot.

Конфигурация Apache на самом деле довольно хорошо документируется. Вы можете использовать псевдоним для /icons/ Например:

# Aliases: Add here as many aliases as you need (with no limit). The format is
# Alias fakename realname
#
# Note that if you include a trailing / on fakename then the server will
# require it to be present in the URL.  So "/icons" isn't aliased in this
# example, only "/icons/".  If the fakename is slash-terminated, then the
# realname must also be slash terminated, and if the fakename omits the
# trailing slash, the realname must also omit it.
#
# We include the /icons/ alias for FancyIndexed directory listings.  If you
# do not use FancyIndexing, you may comment this out.
#
Alias /icons/ "/var/www/icons/"

<Directory "/var/www/icons">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

Кроме того, как неважный побочный вопрос: разумно ли использовать определенный порт для определенных служб? Когда я использовал cPanel, они использовали: 2082 и WHM: 2086. Могу ли я сделать то же самое на моем сервере, чтобы сделать службы (phpMyAdmin и Bugzilla) более скрытыми?

Вы могли бы, но это просто безопасность через неясность, лучше всего обслуживать их через SSL и требовать комбинацию имени пользователя и пароля.