You need to enable JavaScript to run this app. 从Cpanel迁移至Plesk(Litespeed)后PHP代码不生效求助
优惠活动
大模型
产品
解决方案
定价
更多

从Cpanel迁移至Plesk(Litespeed)后PHP代码不生效求助

Plesk环境下原有PHP代码失效的根源与解决方案

核心问题根源

问题完全和Litespeed服务器无关,托管商提出的兼容性猜测不成立(你已有同代码在cPanel+Litespeed环境正常运行的验证案例),本质是两平台的PHP默认配置差异导致
你提供的代码全部使用了PHP短开标签<?,而非国际通用的标准开标签<?php:

  • cPanel默认的PHP配置默认开启short_open_tag = On,短标签可以被PHP引擎正常解析执行
  • Plesk的默认PHP配置为了符合PHP官方的编码规范要求,默认设置short_open_tag = Off,所有以<?开头的代码块会被当成纯HTML文本输出,不会进入PHP解析流程,自然无法实现表单提交时的提示逻辑。

可选解决方案

  • 长期稳定方案(推荐):将代码中所有短开标签<?替换为标准的<?php开标签,修改后的代码如下:
    <?php
    $s=$_GET['Submission'];
    if ($s=="failed") {
       echo ('<p class="errorMessage">Ops! Something went wrong at the Math question. Please try again with correct answer!</p>');
    }
    ?>
    <?php
    $s=$_GET['Submission'];
    if ($s=="success") {
       echo ('<style>.hide {display:none;}.submitted {background:#9dd100; padding:5px 8px; color:#fff;}</style>');
       echo ('<p class="submitted ms">Enquiry form has been submitted successfully. Please allow us to have some time for reviewing, and we will revert to you as soon as possible. Thank you!<br/><span class="note">[This message will be closed in 15 seconds.]</span></p>');
    }
    ?>
    
    改完代码可以完全适配所有主流主机环境,不会再因为短标签配置差异出现失效问题。
  • 快速临时方案:在Plesk的站点管理面板中找到对应站点的PHP设置,将short_open_tag选项调整为开启状态,保存配置后PHP引擎就可以正常解析原有的短标签代码。

验证排查步骤

  1. 新建一个测试文件check_config.php,写入内容<?php phpinfo(); ?>,上传到站点根目录访问,搜索short_open_tag配置项,若显示Off即可确认问题根源。
  2. 查看失效页面的源代码,若PHP逻辑对应的输出完全缺失、也没有显示PHP代码片段,即可判断是PHP引擎根本没有识别到需要解析的代码块。

内容的提问来源于stack exchange,提问作者Jornes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.11.03 22:36:00