Apache 2 Fast cpp php issue

1

Estou tentando definir o PHP como CGI rápido no meu servidor para usar o php7 como versão principal

mas em um dos meus domínios, recebo este erro:

The requested URL / was not found on this server.

aqui está o meu vhost conf:

ScriptAlias / /usr/lib/cgi-bin
DocumentRoot "/home/ue4xxxx/www"

<Directory "/home/ue4xxxx/www">
        Options Indexes FollowSymLinks Includes ExecCGI
        AllowOverride All
        Order allow,deny
        Allow from all

        AddHandler php-cgi .php
        Action php-cgi /cgi-bin/php-cgi-5.6.23
        <FilesMatch "\.php*">
                SetHandler php-cgi
        </FilesMatch>
</Directory>

ErrorLog ${APACHE_LOG_DIR}/ue4/error.log
CustomLog ${APACHE_LOG_DIR}/ue4/access.log combined

Eu tenho o php cgi bin em /usr/lib/cgi-bin e eu quero usar o arquivo na raiz vhost /home/ue4xxxx/www

UPDATE : Depois de seguir algumas sugestões, o vhost conf é agora:

<VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName ue4-xxxx.tld
    ServerAlias ue4-xxxx.tld

        ScriptAlias /cgi-bin /usr/lib/cgi-bin
        DocumentRoot "/home/ue4xxxx/www"

        <Directory "/home/ue4xxxx/www">
                Options Indexes FollowSymLinks Includes ExecCGI
                AllowOverride All
                Order allow,deny
                Allow from all

                AddHandler php-cgi .php
                Action php-cgi /cgi-bin/php-cgi-5.6.23
                <FilesMatch "\.php">
                    SetHandler php-cgi
                </FilesMatch>
        </Directory>

    ErrorLog ${APACHE_LOG_DIR}/ue4/error.log
    CustomLog ${APACHE_LOG_DIR}/ue4/access.log combined
</VirtualHost>

Após essas alterações, recebo um erro 404:

The requested URL /cgi-bin/php-cgi-5.6.23/index.php was not found on this server
    
por Jeremy Talus 30.06.2016 / 13:57

1 resposta

0

Você tem um erro aqui:

<FilesMatch "\.php*">

O "*" não é um curinga no sentido em que você o usou, mas significa "Repita o jogo anterior zero ou mais vezes."

Você deve analisar a documentação do Apache para Expressões regulares e alterar o FilesMatch para:

<FilesMatch "\.php">

TAMBÉM: Parece que:

ScriptAlias / /usr/lib/cgi-bin

provavelmente deveria ser:

ScriptAlias /cgi-bin /usr/lib/cgi-bin

Você pode analisar a documentação do Apache para a Diretiva ScriptAlias para obter mais detalhes sobre o uso .

    
por 30.06.2016 / 14:04