【问题标题】:how to set a SITE variable for localhost using PHP如何使用 PHP 为 localhost 设置 SITE 变量
【发布时间】:2016-06-29 08:30:21
【问题描述】:

合同程序员通过添加 SITE 变量更改了我们的站点,现在在本地主机上运行它时出现以下错误:

"NetworkError: 403 Forbidden - http://localhost/test2016/%3C?=SITE?%3Ecss/screen_layout_medium.css"

我们不知道如何解决这个问题。我们已经尝试了以下所有 5 个选项。

defined('DS') ? null : define('DS', DIRECTORY_SEPARATOR);

defined('SITE') ? null : define('SITE', "");
defined('SITE') ? null : define('SITE', __DIR__);
defined('SITE') ? null : define('SITE', __DIR__.DS);
defined('SITE') ? null : define('SITE', dirname(__FILE__));
defined('SITE') ? null : define('SITE', DS);

我发布这个是因为我们很难从他那里得到答复。

【问题讨论】:

标签: php localhost


【解决方案1】:

SITE 常量可能也在本地版本中定义。问题是这个常量的值设置为在您的生产环境中工作。

您需要做的是找到SITE 常量并将其更改为适用于您的本地环境。

另一个选项是使用 runkit 扩展。

// Redefine SITE constant
runkit_constant_redefine('SITE', dirname(__FILE__).DIRECTORY_SEPARATOR);

为了更好地帮助你,我需要更多关于服务器目录结构和本地主机目录结构的信息。

您可以在runkit_constant_redefinehere找到PHP手册条目

编辑

在尝试重新定义之前转储 SITE 常量并检查它的值会有所帮助。

var_dump(SITE);

【讨论】:

  • 感谢您的帮助,但是合约程序员使用的本地主机在海外,我们无法访问它。我们没有 SITE 常量。
  • 猜测常量中可能包含的内容会很困难。如果您不知道要定义什么,就很难定义它。不过,在您的网站目录上执行pwdls -lh 命令并在此处发布结果会有所帮助。
  • 再次感谢,常量应该是空的,看我上面的评论。
  • 您的网站目录中有.htaccess 文件吗?
猜你喜欢
  • 1970-01-01
  • 2011-02-13
  • 2013-07-18
  • 2018-02-23
  • 2012-06-20
  • 1970-01-01
  • 1970-01-01
  • 2019-08-04
相关资源
最近更新 更多