Acesso a arquivos com ou sem extensão no CentOs e Debian com Multiviews
Dica publicada em Linux / Introdução
Acesso a arquivos com ou sem extensão no CentOs e Debian com Multiviews
O Multiviews é uma opção da diretiva Options do Apache utilizada para habilitar/desabilitar acesso a arquivos sem informar a sua extensão.
Aqui veremos como configurá-lo.
Exemplo:
Para habilitar o MultiViews, siga os passos abaixo:
1) Abra o arquivo de configurações do Apache:
<Directory /var/www/html>
Options Indexes FollowSymLinks Includes
</Directory>
3) Insira o valor MultiViews ao final da linha Options. Exemplo:
4) Feito isso, reinicie o Apache:
Abraços,
@wili4m
http://blogporta80.com.br
Aqui veremos como configurá-lo.
Hands on
Basicamente, ao acessarmos um URL sem extensão, por padrão, estamos buscando um diretório no servidor. Se o diretório não existir, o MultiViews faz uma leitura dos arquivos no local onde deveria haver o diretório solicitado. Havendo um arquivo com nome correspondente, o MultiViews o utiliza omitindo sua extensão.Exemplo:
-
Temos em nosso FTP um arquivo chamado helloworld.txt. Via Browser, fazemos uma requisição ao endereço http://www.meusite.com.br/helloworld.
O helloworld seria o diretório solicitado. Porém, imagine que não temos esse diretório em nosso FTP, mas temos o arquivo chamado helloworld.txt. Com o MultiViews habilitado, o acesso ao URL será feito com sucesso ao passo que sem o MultiViews teríamos um erro 404 (arquivo inexistente).
Para habilitar o MultiViews, siga os passos abaixo:
1) Abra o arquivo de configurações do Apache:
- Para servidores baseados em Debian:
# vim /etc/apache2/apache2.conf - Para servidores baseados em RedHat:
# vim /etc/httpd/conf/httpd.conf
<Directory /var/www/html>
Options Indexes FollowSymLinks Includes
</Directory>
3) Insira o valor MultiViews ao final da linha Options. Exemplo:
<Directory "/var/www/html">
Options Indexes FollowSymLinks Includes MultiViews
</Directory>
Options Indexes FollowSymLinks Includes MultiViews
</Directory>
4) Feito isso, reinicie o Apache:
- Para servidores baseados em Debian:
# /etc/init.d/apache2 restart - Para servidores baseados em RedHat:
# /etc/init.d/httpd restart
Abraços,
@wili4m
http://blogporta80.com.br