Apache2、FastCGI、PHP5和不带.php-sufix的URL
我必须将我的Apache2服务器配置为托管一个基于Joomla 1.5的旧web应用程序。 Apache在Debian Stretch上运行,PHP7作为mod_PHP。我设法将PHP5.6安装为FastCgi模块,它看起来像PHP7的替代品 我的虚拟主机如下所示:Apache2、FastCGI、PHP5和不带.php-sufix的URL,php,joomla1.5,apache2.4,mod-fastcgi,Php,Joomla1.5,Apache2.4,Mod Fastcgi,我必须将我的Apache2服务器配置为托管一个基于Joomla 1.5的旧web应用程序。 Apache在Debian Stretch上运行,PHP7作为mod_PHP。我设法将PHP5.6安装为FastCgi模块,它看起来像PHP7的替代品 我的虚拟主机如下所示: <VirtualHost *:80> ServerName site.pl DocumentRoot /var/www/site/html DirectoryIndex index.html index.
<VirtualHost *:80>
ServerName site.pl
DocumentRoot /var/www/site/html
DirectoryIndex index.html index.php
<FilesMatch ".+\.ph(p[3457]?|t|tml)$">
SetHandler "proxy:unix:/run/php/php5.6-fpm.sock|fcgi://localhost"
</FilesMatch>
</Virtualhost>
问题在于此旧CMS生成的其他URL,如:
http://site.pl/index.php/category/page
很明显,我得到了404错误
我不知道如何保存这种URL并用FastCgi代理处理它们。
什么文件匹配覆盖此url?
有什么想法吗?文件匹配中的参数似乎是一个正则表达式,因此您可以调整它以匹配旧CMS生成的URL,例如:
.+\.ph(p[3457]?|t|tml)(/.*)*$
请注意末尾的
(/.*)
,它与index.php
之后的附加路径匹配,但可以省略,这样没有路径的URL也会匹配。不幸的是,它不起作用。我真的不知道为什么,但是使用这样的配置,FileMatch甚至不包括基本的URL(如)。你能再试一次吗,在末尾添加*
?当你有Joomla特定的问题时,请将它们发布在Joomla Stack Exchange上。
.+\.ph(p[3457]?|t|tml)(/.*)*$