使用 php-fpm 设置 php 7 和 Apache 2.4

使用 php-fpm 设置 php 7 和 Apache 2.4

我有使用 php-fpm 的 Apache 2.4 和 php7。我使用此块将流量传递到 php-fpm

<FilesMatch "\.php$">
    SetHandler "proxy:fcgi://127.0.0.1:9000"
</FilesMatch>

我遇到的问题是,我正在使用的应用程序 piwik 的某些部分使用如下 URL 创建 php 图像

https://xxxxx.edu/piwik/?module=MultiSites&action=getEvolutionGraph&period=day&date=2017-01-28,2017-02-26&evolutionBy=nb_visits&columns=nb_visits&idSite=57&idsite=57&viewDataTable=sparkline&colors=%7B%22backgroundColor%22%3A%22%23ffffff%22%2C%22lineColor%22%3A%22%23162c4a%22%2C%22minPointColor%22%3A%22%23ff7f7f%22%2C%22maxPointColor%22%3A%22%2375bf7c%22%2C%22lastPointColor%22%3A%22%2355aaff%22%7D

因为 URL 中没有 .php,FilesMatch 会失败。如果我手动将 URL 更改为类似https://xxxxx.edu/piwik/index.php?module=它工作得很好......

因此,我认为要么将 FilesMatch 更改为 catch module=,要么创建一个重写规则来插入 index.php,这两种方法都可以,但我需要一些帮助来完成这两项工作。

答案1

根据 Tero 的回复,我发现我可以做两个更改来解决问题:

在 VirtualHost 设置中将 Indexes 添加到目录的 AllowOverride

将 DirectoryIndex index.php 添加到该目录根目录中的 .htaccess 文件。

不确定这是否是最好的解决方案但它确实有效。

相关内容