.png)
Eu tenho um servidor com alguns domínios diferentes (cada um em um VHost separado). Cada VHost funciona bem, executando PHP corretamente, etc. Por exemplo, dois dos domínios são foo.com e bar.com. Estou tentando criar um alias em foo.com que incluirá arquivos de um diretório em bar.com. Fácil, certo?
# Apache config file for foo.com
Alias /bar-alias /var/www/vhosts/bar.com/httpdocs/somedir
<Directory "/var/www/vhosts/bar.com/httpdocs/somedir">
Options Indexes FollowSymLinks
Order Allow,Deny
Allow From All
Deny From None
</Directory>
Funciona bem e elegante, exceto ao tentar executar um script PHP. Na minha configuração, acessar www.foo.com/bar-alias/script.php retorna o código-fonte do script em vez de executá-lo. Eu tenho batido minha cabeça contra a parede tentando descobrir como fazer o Apache executar PHP dessa maneira, e não estou conseguindo nada.
(Se forde forma algumapossível, gostaria de evitar ter que fazer qualquer ligação simbólica ou coisas assim. Isso parece algo que eu deveria ser capaz de fazer puramente dentro da configuração do Apache, mas não consigo descobrir como fazê-lo.)
Responder1
Parece que ele pode estar executando o alias antes de terminar de ler o http conf completo. A seguinte linha foi encontrada antes ou depois do seu Alias? Tente movê-lo acima:
Include conf.d/*.conf
Responder2
Na verdade eupensarEu entendi. Por pura frustração, copiei o seguinte de uma parte anterior das configurações e coloquei no <Directory>
bloco deste alias...
<IfModule sapi_apache2.c>
php_admin_flag engine on
php_admin_flag safe_mode off
</IfModule>
<IfModule mod_php5.c>
php_admin_flag engine on
php_admin_flag safe_mode off
</IfModule>
E eis que começou a funcionar como eu esperava. Vou insistir um pouco mais (realmente não parece que eu deveria precisar disso), mas por enquanto está funcionando bem o suficiente.