Acessando diretórios fora do DocumentRoot

3

Eu recentemente implantei um aplicativo da Web no meu servidor Linux Redhat usando Capistrano que cria a seguinte estrutura de diretórios na raiz de documentos do site:

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

Para carregar o diretório atual no carregamento da página, alterei meu httpd.conf para que DirectoryRoot de example.com fosse definido como /var/www/html/example.com/current . O problema é que eu quero que certos diretórios estejam disponíveis para navegação, que estão fora do diretório 'atual' (phpMyAdmin e Bugzilla). Eu tentei touch ing um arquivo .htaccess para /var/www/html/example.com mas nada é criado ...

O que eu preciso fazer para acessar diretórios que estão localizados fora do meu DocumentRoot? Devo alterar o DocumentRoot e usar o .htaccess para encaminhar o navegador da web para o diretório atual ou há uma abordagem melhor?

Além disso, como uma questão secundária não importante: é sensato usar uma porta específica para determinados serviços? Quando usei cPanel, eles usaram: 2082 e WHM utilizados: 2086. Eu poderia fazer algo semelhante no meu servidor para tornar os serviços (phpMyAdmin e Bugzilla) um pouco mais ocultos?

    
por hohner 21.02.2012 / 02:36

1 resposta

4

Você vai querer usar um Alias para dar acesso a diretórios fora de você. DocumentRoot.

A configuração do Apache é muito bem auto-documentável. Você pode usar o alias de /icons/ como exemplo:

# 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>

Also, as an unimportant side issue: is it wise to use a specific port for certain services? When I used cPanel, they used :2082 and WHM used :2086. Could I do a similar thing on my server to make the services (phpMyAdmin and Bugzilla) a little more hidden?

Você pode, mas isso é apenas a segurança através da obscuridade que você pode apostar é através de SSL e requer uma combinação de nome de usuário / senha.

    
por 21.02.2012 / 02:46