Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache2返回php源代码_Php_Apache_Ubuntu_Apache2 - Fatal编程技术网

Apache2返回php源代码

Apache2返回php源代码,php,apache,ubuntu,apache2,Php,Apache,Ubuntu,Apache2,Ubuntu 12.04 安装了Apache2 # apache2 -v Server version: Apache/2.2.22 (Ubuntu) Server built: Mar 19 2014 21:11:49 # php --version PHP 5.4.6-1ubuntu1.8 (cli) (built: Apr 4 2014 01:28:36) Copyright (c) 1997-2012 The PHP Group Zend Engine v2.4.0, Copyr

Ubuntu 12.04

安装了Apache2

# apache2 -v
Server version: Apache/2.2.22 (Ubuntu)
Server built:   Mar 19 2014 21:11:49
# php --version
PHP 5.4.6-1ubuntu1.8 (cli) (built: Apr  4 2014 01:28:36)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies
安装了PHP

# apache2 -v
Server version: Apache/2.2.22 (Ubuntu)
Server built:   Mar 19 2014 21:11:49
# php --version
PHP 5.4.6-1ubuntu1.8 (cli) (built: Apr  4 2014 01:28:36)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies
PHP模块已安装并启用

# a2enmod php5
Module php5 already enabled
php5.conf包含SetHandler指令

<IfModule mod_php5.c>
    <FilesMatch ".+\.ph(p[345]?|t|tml)$">
        SetHandler application/x-httpd-php
    </FilesMatch>
    <FilesMatch ".+\.phps$">
        SetHandler application/x-httpd-php-source
        # Deny access to raw php sources by default
        # To re-enable it's recommended to enable access to the files
        # only in specific virtual host or directory
        Order Deny,Allow
        Deny from all
    </FilesMatch>
    # Deny access to files without filename (e.g. '.php')
    <FilesMatch "^\.ph(p[345]?|t|tml|ps)$">
        Order Deny,Allow
        Deny from all
    </FilesMatch>

    # Running PHP scripts in user directories is disabled by default
    #
    # To re-enable PHP in user directories comment the following lines
    # (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
    # prevents .htaccess files from disabling it.
    <IfModule mod_userdir.c>
        <Directory /home/*/public_html>
            php_admin_value engine Off
        </Directory>
    </IfModule>
</IfModule>

SetHandler应用程序/x-httpd-php
SetHandler应用程序/x-httpd-php-source
#默认情况下拒绝访问原始php源代码
#要重新启用,建议启用对文件的访问
#仅在特定虚拟主机或目录中
命令拒绝,允许
全盘否定
#拒绝访问没有文件名的文件(例如.php)
命令拒绝,允许
全盘否定
#默认情况下,在用户目录中运行PHP脚本是禁用的
#
#要在用户目录中重新启用PHP,请注释以下行
#(从到)不要将其设置为打开,因为
#防止.htaccess文件禁用它。
php_管理_值引擎关闭
但是我的文件是/var/www/wwuser/data/domain.com/info.php

<?php phpinfo(); ?>


未执行-返回其源代码。为什么?

这个问题已经问了一年了,可能已经太迟了,但是没有公认的答案,我是从谷歌无意中找到的。我正在处理一个非常类似的问题,也许我的解决方案对将来的某个人有用:

PHP.ini
中有一个PHP指令:

short_open_tag = Off
如果这是
Off
,那么PHP将忽略
标记,因为它需要

所以在我的例子中,问题是我的测试脚本:

<? phpinfo(); ?>


解决方案是将标签更改为
尝试sudo apt get install libapache2-mod-php7.2&&sudo服务apache2重启

您可能有另一个版本的php,请参考您的php版本。为我工作,zend跑得很好。希望他们能帮上忙。@Idris我已经在谷歌上搜索过了。未成功。您使用哪个URL访问该文件?是否定义了可能干扰模块定义的虚拟主机?@TeTeT我用于访问该文件。其他虚拟主机是通过与它们没有碰撞而存在的。这个答案是一个救命稻草,我从来没有想到过。在上下文中,他们在Ubuntu 12.04和14.04之间将其默认值从On改为Off。请注意,由于RFC()在PHP8.0中不推荐使用短标记,因此强烈建议不要再使用短标记,并将在PHP9.0中删除。