从Apache HTTPd中的别名目录提供php文件

时间:2016-09-28 15:27:23

标签: php apache

我有以下apache配置:

 <IfModule mod_ssl.c>
  <VirtualHost _default_:443>

    DocumentRoot /var/www/html/public/

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

    SSLEngine on

    SSLCertificateFile  /etc/apache2/ssl/ssl.crt
    SSLCertificateKeyFile /etc/apache2/ssl/ssl.key

    Alias /login/ /var/www/html/saml_provider/www/

    <LocationMatch "^(.*\.php)$">
         ProxyPass fcgi://presentation-php-fpm:9000/var/www/public
    </LocationMatch>

</VirtualHost>
</IfModule>

点击www.example.com/hello.php工作正常,因为LocationMatch块获取这是一个php文件,并使用proxy-pass将其发送到php-fpm引擎。

然而,点击www.example.com/login/hi.php不起作用,给出了“文件未找到”错误。这是有道理的,因为我猜它正试图在/ var / www / public中找到该文件,但它实际上在/ var / www / html / saml_provider / www /.

如何修复此问题,以便php还可以在别名上提供任​​何.php文件:

www.example.com/login/hi.php ---由php提供服务----&gt; /var/www/html/saml_provider/www/hi.php

0 个答案:

没有答案