Я экспериментирую с обновлением моего сервера Centos 7 с PHP5 до PHP7, и похоже, что также рекомендуется использовать подход fpm (который я новичок).
На моем тестовом сервере я установил PHP7 .3 без проблем и PHP -FPM. И добавление строки
ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://127.0.0.1:9000/my_doc_root/$1
Работает .... вроде.
Проблема заключается в том, что по историческим причинам, не зависящим от меня, у меня есть различные пути, наложенные на /, но которые находятся за пределами документа root. т.е.
Alias /myURL /some/different/path
Очевидно, проблема в том, что приведенная выше команда ProxyPassMatch
перенаправит «myURL / fi sh. php» в несуществующий файл («my_doc_root / fi sh». php "), которая выдает ошибку.
Есть ли простое решение этой проблемы? например, что-то, что я могу вставить в записи <Directory>
для документа root и для some/different/path
. В качестве альтернативы, есть ли способ обновить /etc/https/conf.d/php.conf
(с PHP5) для запуска PHP7 в старом стиле? Я не думаю, что смогу, поскольку в пакетах php73 не было файла lib php.
Очевидно, что есть решения (напишите отдельные директивы ProxyPassMatch
для каждого URL, которого нет в документ root или реорганизовать всю файловую систему более разумным способом), но я бы предпочел этого избежать, если смогу; действительно, последнее я просто не могу сделать.