Apache: fecha o site inteiro para público, mas exibe uma página personalizada

3

Suponha que eu não queira excluir nenhum arquivo ou qualquer coisa do meu site, mas quero fechar tudo para o público. Eles simplesmente precisam ver uma página personalizada.

Como alguém pode fazer isso através do arquivo httpd.conf ? Talvez algo como:

Alias /* /a.txt
    
por Jeff Schaller 10.07.2014 / 04:27

2 respostas

2

Você está no caminho certo! :)

Cole uma página personalizada index.html em uma pasta diferente em seu servidor e aponte o DocumentRoot para ela. Portanto, se o site atual estiver em /var/www/ , seu arquivo .conf incluirá uma linha que parece com DocumentRoot /var/www - altere para apontar para o diretório em que sua nova página personalizada index.html está.

Verifique também se há permissões disponíveis para acessar o diretório em que a nova página personalizada está. Para o seu documento raiz (supondo que seja /var/www ), suas permissões no arquivo conf devem ser:

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted 
</Directory>

Troque isso para seu novo diretório (por exemplo, <Directory /var/www2/> )

Reinicie o apache para que o arquivo de configuração seja carregado (por exemplo, sudo service apache2 restart ou sudo /etc/init.d/apache restart )

Quando você quiser apontar para o seu site antigo, apenas troque de volta :)

    
por 10.07.2014 / 12:57
1

Eu sugiro uma regra de reescrita para isso:

RewriteCond %{REQUEST_URI} ^/a\.txt$
RewriteRule ^(.*)$ - [L]

RewriteRule ^(.*)$ /a.txt?url=%{REQUEST_URI} [R=302,L,QSA]

Esta regra deve direcionar tudo para a.txt sem criar um loop.

    
por 10.07.2014 / 10:02