【问题标题】:Php commented out on ssl onlyphp 只在 ssl 上注释掉了
【发布时间】:2018-07-02 13:46:40
【问题描述】:

我有运行 php 5 的 centos 7 和两个虚拟主机。

一个虚拟主机完美运行,按预期渲染 php,一切正常。 另一个虚拟主机不是。

问题是 php 代码在其中一个中被注释掉了,尽管文件是 .php 而不是 html。

两者的配置与我第一次创建它们时复制/粘贴的所有内容相同,这里是:

<Directory "/var/www/html/XX/public_html/">
                DirectoryIndex index.html index.php
                Options FollowSymLinks
                AllowOverride All
                Require all granted
        </Directory>
        <FilesMatch ".+\.ph(p[345]?|t|tml)$">
                SetHandler None
        </FilesMatch>

         <IfModule mod_suphp.c>
                suPHP_Engine on
                <FilesMatch "\.php[345]?$">
                        SetHandler x-httpd-suphp
                </FilesMatch>
                suPHP_AddHandler x-httpd-suphp
        </IfModule>

我检查了 SELINUX,它被禁用了。

唯一不同的是注释php代码的vhost安装了SSL证书。

如果您需要更多信息来解决这个问题,请告诉我。

提前致谢。

编辑:

通过注释掉,我的意思是:

<?php echo "something"; ?>

变成:

<--!?php echo "something"; ?-->

当我在浏览器中查看页面源代码时。

【问题讨论】:

  • “注释掉”是什么意思?寻求调试帮助的问题(“为什么这段代码不起作用?”)必须包括所需的行为、特定问题或错误必要的最短代码 重现它在问题本身。没有明确的问题陈述的问题对其他读者没有用处。见:How to create a Minimal, Complete, and Verifiable example.
  • @EdCottrell 我花了半个小时重新写了这个问题,所以很容易理解,我尽了最大的努力。我已经更新了问题。
  • 您的服务器未将您的文件作为 PHP 处理。 cmets 不是“真实的”;它们是您的浏览器尝试处理看起来像是未知 HTML 标记的内容。我不确定这是否完全重复,但它是相关的:stackoverflow.com/questions/15098940/…
  • 这不是同一个问题,我的服务器可以在一个虚拟主机中处理 php 文件,但不能在另一个通过 ssl 运行的虚拟主机中处理 php 文件。尽管如此,我更改了文件编码,仍然无法解析 php。

标签: php apache ssl centos suphp


【解决方案1】:

我不知道怎么做,但是将这一行添加到 php.conf(可能是 httpd.conf 给你),解决了这个问题:

suPHP_Engine on
<FilesMatch ".+\.ph(p[345]?|t|tml)$">
        suPHP_AddHandler x-httpd-suphp
        SetHandler x-httpd-suphp
</FilesMatch>

正如我所说,问题出在一个具有 SSL 的虚拟主机上。 可能问题出在 ssl.conf 中的虚拟主机上。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-05-09
    • 2014-02-12
    • 1970-01-01
    • 1970-01-01
    • 2015-08-07
    • 2011-08-12
    • 1970-01-01
    相关资源
    最近更新 更多