Skip to main content
  • Create new account
  • Reset your password
张文涛的个人博客
致力于提供Drupal开发,实践等方面的精品资讯

Main navigation

  • 首页
  • 关于
  • Glossary
  • 分享

Breadcrumb

  • Home
  • Drupal 8/Drupal 9配置文件settings.php进阶
By admin | 11:04 AM CST, Wed June 30, 2021

Drupal http client使用代理抓取墙外数据

$settings['http_client_config']['proxy']['http'] = 'http://206.189.127.27:8080';
$settings['http_client_config']['proxy']['https'] = 'http://206.189.127.27:8080';
$settings['http_client_config']['verify'] = false;
$settings['http_client_config']['proxy']['no'] = ['127.0.0.1', 'localhost'];

错误显示设置和调试设置

$config['devel.settings']['devel_dumper'] = 'var_dumper';
$config['system.logging']['error_level'] = 'verbose';
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);

proxy

$settings['reverse_proxy'] = TRUE;
$settings['reverse_proxy_addresses'] = [  $_SERVER['REMOTE_ADDR'],];

根据uri屏蔽

$bad_uri = [
  '?title1=&title=',
  '?title=&title1=',
  'accounting?page=',
];
foreach ($bad_uri as $uri) {
  if (str_contains($_SERVER['REQUEST_URI'], $uri)) {
    header('HTTP/1.0 403 Forbidden');
    print 'bad visit'; 
    exit;
  }
}

阻止指定的UserAgent访问

$bad_bots = [
	'YisouSpider',
	'MQQBrowser',
	'Mb2345Browser',
	'LieBaoFast',
	'UCBrowser'
];
foreach ($bad_bots as $bad_bot) {
  if (str_contains($_SERVER['HTTP_USER_AGENT'], $bad_bot)) {
    header('HTTP/1.0 403 Forbidden');
    print $bad_bot . ' Not allowed, bad visit!!';
    exit;
  }
}

屏蔽IP(这样效率更高,不要经过数据库,也不要改nginx/apache配置)

## 屏蔽IP
#
if (!function_exists('getRealUserIp')) {
  function getRealUserIp(){
   switch(true){
     case (!empty($_SERVER['HTTP_X_REAL_IP'])) : return $_SERVER['HTTP_X_REAL_IP'];
     case (!empty($_SERVER['HTTP_CLIENT_IP'])) : return $_SERVER['HTTP_CLIENT_IP'];
     case (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) : return $_SERVER['HTTP_X_FORWARDED_FOR'];
     default : return $_SERVER['REMOTE_ADDR'];
    }
  }
}
$real_ip = getRealUserIp();
//support CIDR format
$ban_ip = [
  //'194.87.68.143',
  //'127.0.0.1',
  '10.10.255.0/24',
];

foreach($ban_ip as $IP) {
  if (\Symfony\Component\HttpFoundation\IpUtils::checkIp($real_ip, $IP)) {
   // print "you're in the 10.2 subnet\n";
    header('HTTP/1.0 403 Forbidden');
    print 'Access denied for your IP:' . $real_ip; exit;
  }
}

强制HTTPS(Drupal 7)

$_SERVER['HTTPS'] = 'on';  
$_SERVER['SERVER_PORT'] = 443;

Glossary

  • May 2023 (7)
  • March 2023 (1)
  • October 2022 (1)
  • October 2021 (2)
  • August 2021 (4)
  • June 2021 (2)
  • May 2021 (1)
  • April 2021 (2)
  • November 2020 (1)
  • June 2020 (2)
  • December 2019 (2)
  • November 2019 (1)
  • August 2019 (1)
  • February 2018 (1)
  • October 2017 (1)
  • September 2017 (1)
  • July 2017 (1)
  • June 2017 (2)
  • May 2017 (1)
  • March 2017 (3)
  • December 2016 (2)
  • November 2016 (4)
  • October 2016 (3)
  • June 2016 (1)
  • December 2015 (1)
  • November 2015 (6)
  • October 2015 (2)
  • September 2015 (1)
  • August 2015 (1)
  • July 2015 (1)
  • June 2015 (1)
  • May 2015 (1)
  • March 2015 (1)
  • January 2015 (1)
  • December 2014 (3)
  • October 2014 (5)
  • September 2014 (3)
  • August 2014 (1)
  • July 2014 (1)
  • June 2014 (1)
  • May 2014 (1)
  • April 2014 (2)
  • March 2014 (2)
  • February 2014 (2)
  • January 2014 (4)
  • December 2013 (1)
  • March 2013 (2)
  • February 2013 (2)
  • December 2012 (2)
  • November 2012 (4)
  • October 2012 (1)
  • September 2012 (6)
  • August 2012 (15)
  • July 2012 (5)
  • June 2012 (13)
  • May 2012 (9)
  • April 2012 (8)
  • March 2012 (9)
  • February 2012 (3)
  • January 2012 (1)
  • December 2011 (1)
  • November 2011 (6)
  • October 2011 (2)
  • September 2011 (17)
  • August 2011 (4)
  • July 2011 (4)
  • June 2011 (5)
  • May 2011 (4)

Copyright © 2025

苏ICP备14044171号-1