在Apache/Nginx反向代理上设置WP Hide Pro教程
大家都知道Apache/Nginx服务器的反向代理设置类型成为标准设置的一个很好的选择,以至于不少小伙伴都使用…
大家都知道Apache/Nginx服务器的反向代理设置类型成为标准设置的一个很好的选择,以至于不少小伙伴都使用Nginx进行反代WordPress站点,在加速的同时还可以实现更好的性能和安全性。这里就介绍在Apache/Nginx反向代理上设置WP Hide Pro教程。
- 负载平衡。反向代理可以执行负载平衡,这有助于在后端服务器上均匀地分配客户请求。它也提高了冗余度,因为如果一个服务器遇到技术困难,反向代理将简单地将请求重新路由到不同的服务器。
- 通过压缩内容以提高加载时间,在优化内容时很有帮助。
- 不需要为客户端的每个网络请求设置一个新的进程。相反,默认配置是每个CPU包含一个工作进程。
- 缓解DDoS攻击 。你可以将每个单一IP地址的传入请求和连接数限制在普通用户的典型值。Nginx还允许你根据客户端的位置,以及请求头的值,如 “User-Agent “和 “Referer”,来阻止或限制访问。
- 增加安全性。反向代理还可以作为后端服务器的一道防线。配置一个反向代理可以确保你的后端服务器的身份是未知的。
- 更好的性能。对于Nginx来说,在传递静态内容文件和分析URL时,已经知道有更好的表现
- 可以充当各种协议的反向代理服务器,如HTTP、HTTPS、TCP、UDP、SMTP、IMAP和POP3。
- 加密连接。通过用TLS加密客户端和Nginx反向代理之间的连接,它将处理和解密传入的SSL连接并加密代理服务器的响应。
最常见的设置类型是主站点和代理站点位于同一台服务器上,这是最容易配置和维护的。一般来说,代理网站被部署在一个子目录下,对于我们的例子,我们使用/subfolder/。
在部署了WP-Hide PRO插件后,其设置与普通服务器上的设置是一样的。只是代码无法识别服务器端的配置,所以它仍然会生成包括基础/subfolder/的重写规则,而在使用反向代理时,这一点是没有必要的。
可以用一个可编程的过滤器来对重写规则进行调整,并删除不需要的前缀。下面的例子可以用于Nginx服务器类型。
/**
* Ensure to change the blog with your own location of WordPress which is being used for the Reverse Proxy set-up
*
* @var mixed
*/
define ( 'ReverseProxySubdirectoryBase', 'subdomain' );
/**
* Stripp out the unwanted prefix
*/
add_filter( 'wp-hide/mod_rewrite_rules', '_wp_hide_mod_rewrite_rules', 10, 2 );
function _wp_hide_mod_rewrite_rules( $readable_rules, $server_type )
{
if ( $server_type != 'nginx' || ! is_array ( $readable_rules ) || count ( $readable_rules ) < 1 )
return $readable_rules;
foreach ( $readable_rules as $key => $data )
{
$readable_rules[ $key ] = str_replace ( '/' . ReverseProxySubdirectoryBase . '/' , '/' , $data );
}
return $readable_rules;
}
/**
* Return the rewrite test url
*
* @param mixed $rewrite_test_url
*/
add_filter( 'wp-hide/nginx_test_sample_rewrite/url', '_wp_hide_nginx_test_sample_rewrite_url' );
function _wp_hide_nginx_test_sample_rewrite_url( $rewrite_test_url )
{
$rewrite_test_url = str_replace ( '/' . ReverseProxySubdirectoryBase . '/' , '/' , $rewrite_test_url );
return $rewrite_test_url;
}
/**
* Update the used flag time from last to break
*/
add_filter( 'wp-hide/nginx_flag_type', '_wp_hide_nginx_flag_type' );
function _wp_hide_nginx_flag_type( $flag_type )
{
$flag_type = 'break';
return $flag_type;
}
*在ReverseProxySubdirectoryBase常量中的子域应该根据服务器代理设置进行相应更新。
*这些代码应该放在/wp-content/mu-plugins/文件夹的一个自定义文件中,或者一个自定义插件中。
可以直接在本站下载WP Hide Pro插件,如下
类别:WordPress 进阶教程、
本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。
还没有任何评论,赶紧来占个楼吧!