sudo apt update &&
sudo apt install -y curl &&
curl -fsSL https://deb.nodesource.com/setup_24.x | sudo -E bash - &&
sudo apt install -y nodejs
npm install -g @anthropic-ai/claude-code
npm install -g npm
sudo apt update &&
sudo apt install -y curl &&
curl -fsSL https://deb.nodesource.com/setup_24.x | sudo -E bash - &&
sudo apt install -y nodejs
npm install -g @anthropic-ai/claude-code
npm install -g npm
对生产环境运行的站点,随时会有攻击或者恶意访问的问题,不可避免。
但是能抗住访问而不会导致站点崩溃则是需要努力的方向。
针对Drupal站点,如果已经启用了page_cache模块,则会对页面html进行缓存,相关数据存储在cache_page表中。
对正常的url,这样没问题;如果是一个不存在的url,则也会在cache_page中插入记录,如果数据库空间较小,则很容易消耗完数据库的空间;如果数据库设置了主从复制,则也会创建很多额外的binlog,占用额外的空间。
在settings.php设置如下:
## 系统默认设置的ttl是3600s,也就是一小时;配合cron可以自动清理并释放空间。
$settings['cache_ttl_4xx'] = 0;
$settings['redis.connection']['interface'] = 'PhpRedis';
$settings['redis.connection']['host'] = '10.10.10.10';
$settings['redis.connection']['port'] = '6379';
$settings['redis.connection']['password'] = "your-redis-password";
$settings['cache_prefix'] = '1h_prd';
$settings['cache']['default'] = 'cache.backend.redis';
$settings['cache']['bins']['bootstrap'] = 'cache.backend.chainedfast';
$settings['cache']['bins']['discovery'] = 'cache.backend.chainedfast';
$settings['cache']['bins']['config'] use Drupal\Component\Utility\Timer;
Timer::start('test');
$file = file_get_contents('/var/www/html/web/sites/default/files/2020-11/timg.jpg');
dpm($file);
$base = base64_encode($file);
sleep(1);
$time = Timer::read('test');
dpm($time);
dpm($base);
之前买了块1T的数据盘,用作windows数据备份,格式化为ntfs。现在想把这块盘挂载到Mac使用,但是挂载之后,只能读,不能写和删。 有些收费软件可以搞定这个事情,但是没去试用。 这里介绍命令行的方式,基于一些免费的开源工具。 该实践是基于Mac Big Sur;网上有很多资料都比较老,在最近的mac上安装会失败。本文步骤亲测实践可行。
brew install --cask macfuse
brew install gromgit/fuse/s3fs-mac
[AppID]:[AppSecret]
mkdir ~/oss
s3fs [bucket-id] ~/oss -o url=https://oss-cn-hangzhou.aliyuncs.com -o passwd_file=~/.passwd-s3fs -o use_cache=/tmp
$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);
假设容器名为solr,执行如下步骤:
docker exec -itu root bash
apt update
apt install vim -y
vi /opt/solr/bin/solr.in.sh ##修改如下

docker restart solr
假设内网有一台机器A(linux),机器A运行一个Web应用B,应用B只能通过域名形式进行访问,例如test.com。
内网机器A和外网完全隔离,但是可以通过vpn或远程桌面的形式进行访问操作。
现在需要在个人电脑上直接访问test.com可以直接访问Web应用B。
#假设
有一台中间服务器,运行frp server,细节如下:
frp server 域名为frp.test.com, 端口为7700,token为token
frp server 的5000~5020端口堡垒公网可以访问。
find /var/aegir/projects -maxdepth 3 -name .git
git --git-dir config core.fileMode false
find /var/aegir/projects -maxdepth 3 -name .git|xargs -i git --git-dir={} config core.fileMode false
Copyright © 2026