Запуск PHP-файла вне documentroot (папка cgi-bin)

Я работаю с коллегой, чтобы настроить их локальную среду на MAC в XAMPP, в Windows мой vhost выглядит так, как показано ниже.

Когда я получаю доступ к URL, какHttp: //domain.local/cgi-bin/handler.php веб-сервер обрабатывает PHP правильно, но на его мы получаем ошибку 500 серверов и это сообщение ...

<code>The server encountered an internal error and was unable to complete your request.

Error message: 
Premature end of script headers:
</code>

Мы попытались изменить имя папки cgi-bin на что-то другое, так как я заметил, что в httpd.conf был другой псевдоним, но это не имело никакого эффекта ... поэтому мне кажется, что проблема связана с разрешениями.

Мы считаем, что псевдоним настроен как доступHttp: //domain.local/cgi-bin/filenothere.php который не существует, выбрасывает 404, как и ожидалось, любые файлы .html / .pl не выполняются.

Разрешения, которые существуют в папке cgi-bin ...

rwxrwxrwx персонал Дейва

и принадлежит пользователю и группе ....

Дейв персонал

ВХост

<code><VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName  www.domain.local
    ServerAlias domain.local
ServerAlias api.domain.local

    # Indexes + Directory Root.
    DirectoryIndex index.php
    DocumentRoot E:/home/www/www.domain.co.uk/htdocs/

    # CGI Directory
    ScriptAlias /cgi-bin/ E:/home/www/www.domain.co.uk/cgi-bin/
    <Location /cgi-bin>
            Options +ExecCGI
    </Location>

    # Logfiles
    ErrorLog  E:/home/www/www.domain.co.uk/logs/error.log
    CustomLog E:/home/www/www.domain.co.uk/logs/access.log combined
</VirtualHost>
</code>

Любая идея, что заставляет этот файл PHP не выполняться?

UPDATE Попытался добавить заголовок, чтобы сказать, что содержимое является PHP в начале файла PHP, и теперь это просто выводит код PHP.

Это как если бы любой путь, указанный в качестве псевдонима, был доступен, но сервер не знает, как выполнить содержимое, это как для HTML, так и для PHP

Ответы на вопрос(5)

Ваш ответ на вопрос