服务器3
Ubutu 防火墙规则修改
iptables -nvL --line-number
iptables -D INPUT 需要删除的规则数字
iptables -A INPUT -p tcp --dport 80 -j ACCEPT //新增规则
复制代码
Nginx no alternative certificate subject name matches target host name
curl: (51) SSL: no alternative certificate subject name matches target host name 'server-dev.343.cn'
复制代码
一直以为是证书问题,发现nginx的配置 server_name配错了...
butu18.04系统BUG引起的负载过高问题
问题描述: 此前测试服务器负载偏高,其他各项性能指标都正常,未找到原因。提阿里云工单回复正常。 当日CPU频繁达到100%,负载几十,造成服务器瘫痪。
问题原因: 自查未找到原因。做如下尝试: 1.关闭服务器上的自建服务,负载未恢复正常。 2.重新安装系统,选择ubutu18.04版本,负载未恢复正常。 3.阿里云调整了该实例的物理存储,负载未恢复正常。 4.将该实例打包成镜像重新创建实例,负载正常。 5.将该实例重装系统,选择ubutu16版本,负载正常。
最后基本确认该实例上的ubutu18.04系统存在问题。阿里云方告知该系统版本存在bug: www.mail-archive.com/ubuntu-bugs… 但未查清该系统版本在别的实例上为何不会出现负载异常。
解决方案: 调整系统内核版本。负载由平均4以上降低到0.5左右。
1.vim /etc/default/grub GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 4.15.0-55-generic" 2.grep menuentry /boot/grub/grub.cfg 查看启动顺序 3.update-grub 4.reboot
PHP 慢日志
request_slowlog_timeout = 1s
slowlog = /var/log/php_slow.log
复制代码
Mysql不引用默认配置文件
问题:mysql启动不使用默认的配置文件 解决:手动指定配置文件
root@iZ8vbeb4y2pc1zoyp16kvkZ:/home/suser# /usr/sbin/mysqld --defaults-file=/etc/my.cnf --user=mysql
mysqld: [ERROR] Could not open required defaults file: /etc/my.cnf
mysqld: [ERROR] Fatal error in defaults handling. Program aborted!
复制代码
启动时报错,my.cnf语法应该有问题,指向另一个my.cnf正常启动
apt列出所有已安装的包
apt list --installed
MYSQL慢日志设置
常规操作
slow_query_log = on
slow_query_log_file = /var/log/mysql_slow.log
long_query_time = 1
复制代码
但是重启后进行查看
show variables like "%slow_query_log%"
复制代码
还是OFF,无报错,配置文件没引用错,最后手动建了/var/log/mysql_slow.log才可以。 应该是权限问题。 无报错,可以正常重启是个坑。
PHP 抓取网页乱码
mb_detect_encoding($str, array("ASCII",'UTF-8',"GB2312","GBK",'BIG5'))
mb_convert_encoding($str, 'UTF-8', $encode);
对网页进行编码转换,还是乱码
复制代码
curl获取数据的时候设置添加下面的选项:
curl_setopt($ch, CURLOPT_ENCODING, 'gzip');
使用file_get_contents函数需要安装zlib库
$data = file_get_contents("compress.zlib://".$url);
复制代码
Nginx 跨域配置 和 Options 预检缓存
跨域
add_header Access-Control-Allow-Origin $http_origin;
add_header 'Access-Control-Allow-Credentials' 'true';
add_header Access-Control-Allow-Headers x-requested-with,lang,Origin,origin-
secret,referer,content-type,auth-token;
add_header Access-Control-Allow-Methods GET,POST,OPTIONS;
复制代码
Options缓存
add_header 'Access-Control-Max-Age' 86400;
复制代码
Mac item2自动ssh和session名固定
自动ssh Profiles -> Open Profiles
固定session Profiles -> Terminal -> Terminal may set tab/window title 去掉勾 Iterm2 -> Preference -> Appearance -> show profile name 勾选
相关文章
- 在国企里面当程序猿是一种怎样的体验?
- Google 开源语言模型 Switch Transformer,但不包括权值
- AI面试官也太好骗了!用书架图片做视频背景,提高15%好感度
- 谁才是Watson Health的“掘墓人”?
- 软件吞噬硬件的AI时代,芯片跟不上算法进化可咋办?
- AutoML大提速,谷歌开源自动化寻找最优ML模型新平台
- 为什么说程序开发是一个比较辛苦的职业
- 我精通那么多技术,为何不被重用?
- 如何成为专业的恶意软件研究员
- 开工大吉B面,为什么有年轻人开年就逃离互联网?
- 互联网究竟是怎么诞生的?
- 友商的背刺:Starlink扩张过快遭反对
- 运维人员不具备这些能力,你就是别人眼中的咸鱼
- 技术创新将给全球产业带来数字化变革
- AI智能体学会动物进化法则:李飞飞等提出深度进化RL
- 从自学一门编程语言到能够独立写出可以应用的软件需要多久
- 想用好低代码这把“双刃剑”,先搞清楚这三个问题
- 谷歌「气球互联网」项目,烧钱9年,难逃关停命运
- 程序员请注意!七个细节暴露了你缺乏经验……
- Forrester:2021年中国IT支出将增长9%