You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

部署CodeIgniter项目至admin目录遇语法错误:Parse error: unexpected T_CONST

解决CodeIgniter部署到WordPress子目录的语法错误问题

这个问题我之前帮不少开发者排查过,你遇到的Parse error: syntax error, unexpected T_CONST错误,核心原因几乎可以确定是服务器PHP版本过低,和本地环境的PHP版本不兼容导致的。

为什么会出现这个错误?

CodeIgniter的核心文件(比如你提到的CodeIgniter.php第58行)里用了const关键字来定义类常量,但PHP 5.3之前的版本并不支持在类内部使用const声明常量。如果你的本地环境用的是PHP 5.3+(现在本地开发环境基本都是这个版本以上),但服务器还在跑PHP 5.2或更低版本,就会触发这个语法解析错误。

一步步解决问题

1. 先确认服务器的PHP版本

先搞清楚服务器到底用的是哪个PHP版本:

  • 在public_html/admin目录下新建一个phpinfo.php文件,内容写:
<?php phpinfo(); ?>
  • 访问这个文件(比如输入http://saanapp.com/admin/phpinfo.php),找到页面里的“PHP Version”项,看版本号是不是低于5.3。

2. 升级服务器PHP版本

这是最直接的解决方案:

  • 如果你的主机用的是cPanel这类控制面板,找“PHP版本”或者“MultiPHP Manager”,直接把PHP版本切换到5.6以上(推荐7.4版本,兼顾兼容性和安全性)。
  • 要是没有控制面板权限,直接联系主机服务商,让他们帮你升级PHP版本——现在还在用低于5.3版本的PHP,不仅不兼容框架,还存在严重的安全漏洞,服务商一般都会配合升级。

3. 顺便排查子目录的.htaccess冲突

虽然当前错误是PHP版本的问题,但部署到WordPress的子目录,还要注意两个系统的Rewrite规则冲突:

  • 把admin目录下的.htaccess补全成这样:
RewriteEngine On
RewriteBase /admin/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
  • 上层WordPress的.htaccess要添加一行规则,避免干扰admin目录:
    在WordPress的.htaccess开头加上:
RewriteCond %{REQUEST_URI} !^/admin/

4. 验证配置文件

你的$config['base_url'] = 'http://saanapp.com/admin/';和$config['index_page'] = '';配置是对的,PHP版本升级后,这个配置不会有问题,放心用。

最后测试

升级PHP版本后,记得删除刚才创建的phpinfo.php(避免泄露服务器信息),然后访问http://saanapp.com/admin/,应该就能正常加载你的CodeIgniter项目了。

内容的提问来源于stack exchange,提问作者F.Joodaki

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 09:38:46