PHP Não está sendo executado em diretórios específicos [closed]

1

Ok. Este é um erro muito estranho:

Eu fiz uma pasta chamada ' hello ' em /etc/apache2/sites-enabled/ com hello.php. Então eu criei um Alias que dizia /hello iria para /etc/apache2/sites-enabled/hello . Isso funcionou.

Então eu tentei criar um VHost, que também funcionava:

Alias /hello /etc/apache2/sites-enabled/hello
<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "/etc/apache2/sites-enabled/hello"
    ServerName comercial.YYYY.com
    ServerAlias ot.YYYY.com
    AddType application/x-httpd-php .php3 .php
    AddType application/x-httpd-php-source .phps
    <Directory /etc/apache2/sites-enabled/hello/>
        DirectoryIndex index.php
    </Directory>
</VirtualHost>

Mas então eu li que sites-enabled/ foi destinado apenas para um SymLink do que está dentro de sites-available , então eu mv sites-*e/hello sites-available/hello e fiz a2ensite hello e foi quando o inferno começou.

Antes, o PHP funcionava bem e o "hello" funcionava bem - agora é como se não houvesse PHP lá. O PHP é bom, já que é uma cópia dos arquivos locais que eu tenho. Nenhum erro aparece .. Em qualquer lugar. Eu tentei /var/log/apache/ e nada relacionado a qualquer diretório que eu estou trabalhando com spawns.

Além disso, ao mover o arquivo (sim, tentei locais diferentes), percebi que meu public_html tem o seguinte esquema de permissão:

drwxrwxr-x.  8 5500 www-data 4096 May  3 12:08 domain1_com
drwxrwxrwx   2 root root     4096 May  2 17:25 _cgi-bin
drwxr-xr-x   3 root root     4096 May 17 14:15 comercial_YYYY_com
drwxrwxr-x.  6 5500 www-data 4096 May  3 11:47 domain2_com
drwxrwxr-x.  6 5500 www-data 4096 May  2 17:25 domain3.pt
drwxr-xr-x   7 5500 www-data 4096 May  3 17:55 orcamento_YYYY_com
drwxrwxr-x.  6 5500 www-data 4096 May 13 18:48 domain4_pt
drwxr-xr-x   3 5500 www-data 4096 May 17 11:40 to_domain5_com
drwxrwxr-x.  8 5500 www-data 4096 May 13 18:03 YYYYY.com
drwxrwxr-x. 19 5500 www-data 4096 May  3 11:20 domain5.com
drwxrwxr-x.  6 5500 www-data 4096 May  2 17:25 domain6.pt

Mas eu não tenho o SELinux ativado. Eu sei disso porque a resposta para sestatus é -bash: sestatus: command not found - estou no Debian Squeeze - mas o php não funciona em pastas que não têm permissão de ponto (.) (O thingl do SELinux). / p>

E, como eu não pareço ter o SELinux, eu realmente não sei como ou o que aconteceu. (Eu sei, pensei, todos os domínios são uma cópia-massa de outro servidor que eu estava em)

Estou com perda aqui. Por favor, derramar alguma luz no meu caminho?

    
por MoshMage 17.05.2013 / 16:27

1 resposta

5

Esta é a maneira errada de configurar o Apache. Seus diretórios sites-available e sites-enabled são apenas para configurações de host virtual , não arquivos de conteúdo do seu site. Estes devem ser armazenados em /var/www ou em um diretório de sua escolha.

Suas diretivas AddType e DirectoryIndex devem ser mescladas em sua configuração principal do Apache em /etc/apache2/apache2.conf .

Exemplo:

/etc/apache2/sites-available/mydomain.com :

<VirtualHost *:80>
  ServerAdmin [email protected]
  DocumentRoot "/var/www/mydomain.com"
  ServerName mydomain.com
  <Directory /var/www/mydomain.com/>
    Options -Indexes
    Order allow,deny
    Allow from all
  </Directory>
</VirtualHost>

Este arquivo é então ligado ao sym a /etc/apache2/sites-enabled/mydomain.com .

Os dados do seu site são armazenados em /var/www/mydomain.com .

    
por 17.05.2013 / 16:32