繁体   English   中英

WordPress wp-config.php if-else 在某些计算机上不起作用

[英]WordPress wp-config.php if-else is not working on some computers

我在本地和远程设置中有相同的 wp-config。

下面的代码检查用户是否正在加载站点的本地或实时版本,并使用适当的数据库凭据:

/* 
 * Unified variables 
 */   
$hostname = 'localhost';  
$chartset = 'utf8';  
*etcetc....

/* 
 * Check for the current environment 
 */  
if ($_SERVER["HTTP_HOST"] === 'example.dev') {  
  $db_name = 'example';  
  $user_name = 'root'; 
  $password = 'root';  
} else 
{  
  $db_name = 'remote_db_name';
  $user_name = 'remote_db_user';
  $password = 'remote_db_pw; 
}  
 
// ** MySQL settings - You can get this info from your web host ** //  
/** The name of the database for WordPress */  
define('DB_NAME', $db_name);  
  
/** MySQL database username */  
define('DB_USER', $user_name);  
//etc....

这个有效。 但是如果我以其他方式翻转 if 命令,那么它

if ($_SERVER["HTTP_HOST"] === 'example.com') {  
  $db_name = 'example';  
  $user_name = 'root'; 
  $password = 'root';  
} else 
{  
  $db_name = 'remote_db_name';
  $user_name = 'remote_db_user';
  $password = 'remote_db_pw; 
}  

它适用于我使用几种不同的设备和连接,但对于我的客户它不再适用。 任何想法为什么会这样?

我需要它是另一种方式,因为我正在使用其他设备测试我的设计,网址如下: http : //example.dev.192.168.1.3.xip.io ,如果所有本地开发的强度都会更好像 example.dev 和http://example.dev.192.168.1.3.xip.io将是 if-else 中的“else”-case。

什么可能导致我的客户端出现数据库错误? 他尝试了几种设备和连接,如果实时服务器处于“其他”情况而不是“其他”情况,问题就会消失。

if ($_SERVER["HTTP_HOST"] === 'example.com') {  

也许考虑这样的事情:

if ( stristr( $_SERVER['HTTP_HOST'], 'example.dev' ) ) {

}

这将适用于您上面给出的示例。 您甚至可以尝试 example.com 作为指针。 我很好奇 www. 会出现在 HTTP_HOST 中。 如果是这样,这可能是您的客户遇到问题的原因吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM