服务器负载。$_SERVER[‘REMOTE_ADDR’]和$_SERVER[‘HTTP_HOST’]

时间:2012-11-27 作者:Gregory

在编写新代码并对其进行测试时,我通过测试远程IP地址将其整合到我的站点中,如下所示:;i、 e.,我是唯一会看到新代码的人:

在里面/functions.php:

// to hide certain sections/features from people other than myself
$myIP = \'219.88.88.88\'; // the value as currently indicated by Airport Utility
if( FALSE ) // set to TRUE to initiate Remote Addr test
    define( \'ITS_ME\', $myIP == $_SERVER[\'REMOTE_ADDR\'] );
else
    define( \'ITS_ME\', FALSE );
在模板中;例如,front-page.php:

if( ITS_ME ) // IN DEVELOPMENT
    echo gregory_get_featured_announcements();
此外,有五个域指向我的服务器,因为我有五个不同语言的名字。我使用$_SERVER[\'HTTP_HOST\'] 在连接到的筛选器函数中home_url()site_url() 设置访问者指定的主机的内部链接域。

我想知道;这些是否可能会给服务器带来沉重的负载?缓存插件会像W3 Total Cache 帮助

其他信息,非常抱歉。这个问题很难理解。s\\u ha\\u dum是对的。我正在现场服务器上测试。我所做的永远不会在专业环境中完成。我正在开发自己的个人博客。

ITS_ME 是一个开关,如果加载站点的访问者具有我的IP地址,则该开关的计算结果为TRUE;i、 客人是我。如果开关接通,则if( ITS_ME ) 执行条件语句。此代码可以在我的任何WP模板中。该开关也用于functions.php 有选择地require() 正在开发WP文件。

如果有访客访问我的域名1,请修改域名。com,所有内部链接都将基于domain1。com。如果他们访问域2。com,所有内部链接都将基于domain2。但除此之外,他们看到的内容完全相同。请参见https://wordpress.stackexchange.com/a/73621/15311

格雷戈里

3 个回复
最合适的回答,由SO网友:kaiser 整理而成

调试(&A);缓存

。。。根本不起作用。如果你加载一个页面(在一个缓存的请求上)并做所有那些奇怪的事情,比如检查你是否登录,如果你使用的是管理员角色帐户等等,那么缓存插件就会绕过所有这些。缓存将应用于生成的HTML页面,而不是生成它的PHP代码。

(…)像W3 Total cache这样的缓存插件会有帮助吗?

NO, 简单地说。扩展解释:这会让情况变得更糟。您将缓存所有数据(如果缓存是根据您的请求生成的),每个人都将得到调试转储服务。帮你自己一个忙

如果要在实时服务器上调试,请始终停用缓存。

如何在实时站点上进行调试

在我在实时服务器上使用的一个调试插件中,如果没有满足任何条件,我会在上面进行以下检查以中止。

// Nothing to see here
if (
    ! is_admin()
    AND isset( $_GET[\'debug\'] )
    AND \'true\' === $_GET[\'debug\']
    AND current_user_can( \'manage_options\' )
    AND ( defined( \'DOING_AJAX\' ) AND DOING_AJAX )
    AND ( defined( \'DOING_CRON\' ) AND DOING_CRON )
)
    return;
因此,只有在查询参数为"?debug=true""/debug/true" (取决于永久链接设置)追加。

您还可以写入日志文件(但在流量较大的网站上不应这样做)。以下是wp-config.php 文件,这将抑制错误,但将它们写入日志文件。

# DEBUG
define( \'WP_DEBUG\',               true );
// file: ~/WP_CONTENT_DIR/debug.log
define( \'WP_DEBUG_LOG\',           true );
define( \'WP_DEBUG_DISPLAY\',       true );

SO网友:totels

我想知道;这些是否可能会给服务器带来沉重的负载?像W3 Total cache这样的缓存插件会有帮助吗?

简而言之,答案是否定的,这对服务器来说不是一个沉重的负载。一般来说,简单的布尔检查被认为是一种“免费”操作,不会给您的站点增加任何显著的开销。

这实际上是W3 Total Cache无法提供帮助的少数事情之一。你需要一个code cache accelerator 例如XCache或Zend Optimizer,它会预编译和存储您的代码以产生任何差异(并不是说W3不会带来全面的好处)。根据您的托管解决方案,您可能已经有了一个托管解决方案。

SO网友:s_ha_dum

我怀疑ITS_ME 将导致服务器出现太多问题。对我来说,这是一个相当小的负担。我对服务器做了非常非常糟糕的事情。这是一个非常简短的答案,但我认为就是这样。

缓存通常对站点有帮助,但我不认为缓存中有什么特别的东西,或者你的操作开销太低,我怀疑你会注意到。

我会定义ITS_ME 但早些时候,请说wp-config.php.

结束

相关推荐

如何手动清除Memcached WordPress站点选项?

重新启动memcache节点后,我只在根博客上收到一个错误,来自wp includes/ms设置的错误日志消息很明显。php。[Thu Jul 07 18:55:27 2011] [error] [client 12.34.56.78] PHP Warning: Attempt to assign property of non-object in /var/www/domain.php/wp-includes/ms-settings.php on line 114 从该文件中转储$curre

服务器负载。$_SERVER[‘REMOTE_ADDR’]和$_SERVER[‘HTTP_HOST’] - 小码农CODE - 行之有效找到问题解决它

服务器负载。$_SERVER[‘REMOTE_ADDR’]和$_SERVER[‘HTTP_HOST’]

时间:2012-11-27 作者:Gregory

在编写新代码并对其进行测试时,我通过测试远程IP地址将其整合到我的站点中,如下所示:;i、 e.,我是唯一会看到新代码的人:

在里面/functions.php:

// to hide certain sections/features from people other than myself
$myIP = \'219.88.88.88\'; // the value as currently indicated by Airport Utility
if( FALSE ) // set to TRUE to initiate Remote Addr test
    define( \'ITS_ME\', $myIP == $_SERVER[\'REMOTE_ADDR\'] );
else
    define( \'ITS_ME\', FALSE );
在模板中;例如,front-page.php:

if( ITS_ME ) // IN DEVELOPMENT
    echo gregory_get_featured_announcements();
此外,有五个域指向我的服务器,因为我有五个不同语言的名字。我使用$_SERVER[\'HTTP_HOST\'] 在连接到的筛选器函数中home_url()site_url() 设置访问者指定的主机的内部链接域。

我想知道;这些是否可能会给服务器带来沉重的负载?缓存插件会像W3 Total Cache 帮助

其他信息,非常抱歉。这个问题很难理解。s\\u ha\\u dum是对的。我正在现场服务器上测试。我所做的永远不会在专业环境中完成。我正在开发自己的个人博客。

ITS_ME 是一个开关,如果加载站点的访问者具有我的IP地址,则该开关的计算结果为TRUE;i、 客人是我。如果开关接通,则if( ITS_ME ) 执行条件语句。此代码可以在我的任何WP模板中。该开关也用于functions.php 有选择地require() 正在开发WP文件。

如果有访客访问我的域名1,请修改域名。com,所有内部链接都将基于domain1。com。如果他们访问域2。com,所有内部链接都将基于domain2。但除此之外,他们看到的内容完全相同。请参见https://wordpress.stackexchange.com/a/73621/15311

格雷戈里

3 个回复
最合适的回答,由SO网友:kaiser 整理而成

调试(&A);缓存

。。。根本不起作用。如果你加载一个页面(在一个缓存的请求上)并做所有那些奇怪的事情,比如检查你是否登录,如果你使用的是管理员角色帐户等等,那么缓存插件就会绕过所有这些。缓存将应用于生成的HTML页面,而不是生成它的PHP代码。

(…)像W3 Total cache这样的缓存插件会有帮助吗?

NO, 简单地说。扩展解释:这会让情况变得更糟。您将缓存所有数据(如果缓存是根据您的请求生成的),每个人都将得到调试转储服务。帮你自己一个忙

如果要在实时服务器上调试,请始终停用缓存。

如何在实时站点上进行调试

在我在实时服务器上使用的一个调试插件中,如果没有满足任何条件,我会在上面进行以下检查以中止。

// Nothing to see here
if (
    ! is_admin()
    AND isset( $_GET[\'debug\'] )
    AND \'true\' === $_GET[\'debug\']
    AND current_user_can( \'manage_options\' )
    AND ( defined( \'DOING_AJAX\' ) AND DOING_AJAX )
    AND ( defined( \'DOING_CRON\' ) AND DOING_CRON )
)
    return;
因此,只有在查询参数为"?debug=true""/debug/true" (取决于永久链接设置)追加。

您还可以写入日志文件(但在流量较大的网站上不应这样做)。以下是wp-config.php 文件,这将抑制错误,但将它们写入日志文件。

# DEBUG
define( \'WP_DEBUG\',               true );
// file: ~/WP_CONTENT_DIR/debug.log
define( \'WP_DEBUG_LOG\',           true );
define( \'WP_DEBUG_DISPLAY\',       true );

SO网友:totels

我想知道;这些是否可能会给服务器带来沉重的负载?像W3 Total cache这样的缓存插件会有帮助吗?

简而言之,答案是否定的,这对服务器来说不是一个沉重的负载。一般来说,简单的布尔检查被认为是一种“免费”操作,不会给您的站点增加任何显著的开销。

这实际上是W3 Total Cache无法提供帮助的少数事情之一。你需要一个code cache accelerator 例如XCache或Zend Optimizer,它会预编译和存储您的代码以产生任何差异(并不是说W3不会带来全面的好处)。根据您的托管解决方案,您可能已经有了一个托管解决方案。

SO网友:s_ha_dum

我怀疑ITS_ME 将导致服务器出现太多问题。对我来说,这是一个相当小的负担。我对服务器做了非常非常糟糕的事情。这是一个非常简短的答案,但我认为就是这样。

缓存通常对站点有帮助,但我不认为缓存中有什么特别的东西,或者你的操作开销太低,我怀疑你会注意到。

我会定义ITS_ME 但早些时候,请说wp-config.php.

相关推荐

Nginx+WordPress+HHVM:为什么Batcache不能工作?瓦尼什会提供更多帮助吗?

我听说了很多关于HHVM, 所以我用Nginx(带Pagespeed模块)和HHVM设置了WordPress博客的副本(在另一个域上)。现在,好处是显而易见的:在相同的配置上,加载时间要快两到三倍。我正在努力加快速度,我还安装了Memcached and Batcache. 我已经安装了memcached 包,已复制对象缓存。php(Pastebin) 在WordPress博客的根文件夹上,然后我安装了Batcache插件并复制了高级缓存。php(Pastebin) 将文件保存到wp content文件夹