1

我有上面提到的设置。一切正常,除了一个问题,对于丢失的 .php 文件,我总是得到一个带有“找不到文件”消息的空白页面(顺便说一句,带有 404 状态代码)。我的虚拟主机中有 ErrorDocument 404 行,但看起来它在 FastCGI 的情况下不起作用(对于未路由到 FastCGI 的文件,它仍然有效)。在此配置中是否有正确处理 404 的方法?这是我的虚拟主机:

    <VirtualHost *:80>
    ServerAdmin info@domain.com

    ServerName domain.com
    ServerAlias www.domain.com

    DocumentRoot /var/www/xxx/yyy/

    <Directory /var/www/xxx/yyy>
            Options FollowSymLinks -MultiViews
            AllowOverride FileInfo AuthConfig Limit Options
            Order allow,deny
            allow from all
    </Directory>

    FastCgiExternalServer /var/www/xxx/yyy/php.fastcgi -socket /tmp/php-fpm -pass-header Authorization
    Action php-fpm-yyy /php.fastcgi virtual

    <FilesMatch ".+(php|html)$">
            SetHandler php-fpm-yyy
    </FilesMatch>

    ErrorDocument 404 /map.php

    ErrorLog ${APACHE_LOG_DIR}/yyy/error.log
    LogLevel warn
    CustomLog ${APACHE_LOG_DIR}/yyy/access.log combined
    </VirtualHost>
4

0 回答 0