小白艰难的排错经历(持续更新)
1.域名解析,本地hosts文件
2.防火墙,selinux
3.配置文件,检查server
1.浏览器输入IP
2.自定义server有问题
3.本地域名解析
4.缓存
5.代理没有加入proxy_set_header
1.web下载mariadb客户端
[root@web03 wordpress]# yum install -y mariadb
2.远程连接数据库
[root@web03 wordpress]# mysql -uroot -p1 -h10.0.0.51 #root用户不支持远程连接
ERROR 1045 (28000): Access denied for user 'root'@'10.0.0.9' (using password: YES)
[root@web03 wordpress]# mysql -uppp -p1 -h10.0.0.51 #可以连接说明数据库本身没问题,问题出在了web的配置
原因是修改了域名
方法:
1.导出数据库
mysqldump -B wp > /tmp/wp.sql
2.修改数据库里的域名,换成现在要用的
vim /tmp/wp.sql
:%s#xxx#XXX#g
2.导入数据库
mysqldump < /tmp/wp.sql
3.浏览器访问
4.登录博客进入后台修改域名
自定义伪静态
具体参考TP
nginx无法启动,error显示 Address alrea...use
1.检查配置文件
[root@web02 conf.d]# ll
total 24
-rw-r--r-- 1 root root 1094 Jun 3 08:00 default.conf
-rw-r--r-- 1 root root 104 May 29 21:15 fz.conf
-rw-r--r-- 1 root root 135 May 30 01:24 jt.conf
-rw-r--r-- 1 root root 378 May 28 02:13 phpmy.conf
-rw-r--r-- 1 root root 281 May 27 23:26 wp.conf
-rw-r--r-- 1 root root 280 May 28 00:06 zh.conf
2.假设是否是配置文件的问题,压缩配置文件
[root@web02 conf.d]# gzip ./*
[root@web02 conf.d]# systemctl status nginx
● nginx.service - nginx - high performance web server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)
Active: active (running) since Wed 2020-06-03 08:01:36 CST; 10s ago
Docs: http://nginx.org/en/docs/
Process: 6070 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=exited, status=0/SUCCESS)
CGroup: /system.slice/nginx.service
├─6071 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
└─6072 nginx: worker process
3.nginx正常启动,说明某一配置文件端口冲突
4.使用以下命令依次检查即可排错
[root@web02 conf.d]# !p
ps -ef|grep nginx
[root@web02 conf.d]# nginx -sload
[root@web02 conf.d]# gzip -d xx
为网站配置自签证书,nginx -sreload时报错
server {
listen 443 ssl;
server_name www.linux.com;
root /code/dist;
index index.html;
ssl_certificate /etc/nginx/ssl_key/20200603_www.linux.com.crt;
ssl_certificate_key /etc/nginx/ssl_key/20200603_www.linux.com.key;
location ~* ^/(download|friend|blog) {
rewrite ^/(.*)$ http://$1.linux.com redirect;
}
}
#原因是ssl_certificate ssl_certificate_key配置在了location里面,放出来就好了,但是官方说可以放到location里,搞不清,但是问题解决了
原因:php无法写入session在文件/var/lib/php/session中
授权:
方法1.
[root@web03 ~]# chown -R www. /var/lib/php/session
方法2.
[root@web03 ~]# chmod -R 777 /var/lib/php/session
仅仅修改WordPress的servername,会造成新域名无法登陆
1.使用旧的域名登陆WordPress后台
2.在设置里,修改域名记录,改成新域名,保存退出
3.使用新域名访问
1.重启php
2.对wecenter授权
问题描述:lb生成了自签证书,修改WordPress后台绑定,导致cs.wp.com无法登陆
像这种直接访问不了网站的情况直接去检查:
1.nginx是否启动,PHP是否启动
2.nginx和PHP是否重启
3.域名解析
问题描述:浏览器访问cs.wp.com,出现破窗,图片不能加载
1.在web服务器的fastcgi_params添加,'fastcgi_param HTTPS on;'即可解决
2.图片加载不出来,可能是因为没有做nfs的原因
问题描述,机器开机或者恢复挂起的时候,搭载好的网站无法访问,命令行使用简单的命令夯住
1.reboot(2-3次)
2.如果无法进入系统,那么可以选择进入救援模式,舒适/etc/fastab里面的挂载
所以,虚拟机关机或者挂起的时候一定要先取消挂载
#开启过防火墙,再永久关闭,并不能真正的关闭,重启之后才生效,不重启的话,就会导致以上现象(虚拟vip无法生成)
原因没找到,重启了一下报错没了
问题描述:keepalived状态异常,无法使用systemctl来管理
[root@lb01 ~]# vim /usr/lib/systemd/system/keepalived.service
[Unit]
Description=LVS and VRRP High Availability Monitor
After=syslog.target network-online.target
[Service]
Type=forking
PIDFile=/var/run/keepalived.pid
#KillMode=process #注释掉
EnvironmentFile=-/etc/sysconfig/keepalived
ExecStart=/usr/sbin/keepalived $KEEPALIVED_OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target
~
[root@lb01 /var/lib/systemd]# systemctl daemon-reload #重载守护进程
[root@lb01 /var/lib/systemd]# pkill keepalived #杀掉进程
[root@lb01 /var/lib/systemd]# ps -ef|grep kee
root 2172 1151 0 17:26 pts/0 00:00:00 grep --color=auto kee
[root@lb01 /var/lib/systemd]# systemctl start keepalived.service
[root@lb01 /var/lib/systemd]# ps -ef|grep kee
root 2197 1 0 17:27 ? 00:00:00 /usr/sbin/keepalived -D
root 2198 2197 0 17:27 ? 00:00:00 /usr/sbin/keepalived -D
root 2199 2197 0 17:27 ? 00:00:00 /usr/sbin/keepalived -D
root 2203 1151 0 17:27 pts/0 00:00:00 grep --color=auto kee
[root@lb01 /var/lib/systemd]# systemctl restart keepalived.service
[root@lb01 /var/lib/systemd]# ps -ef|grep kee #keepalived PID改变,重启成功
root 2225 1 0 17:28 ? 00:00:00 /usr/sbin/keepalived -D
root 2226 2225 0 17:28 ? 00:00:00 /usr/sbin/keepalived -D
root 2227 2225 0 17:28 ? 00:00:00 /usr/sbin/keepalived -D
root 2229 1151 0 17:28 pts/0 00:00:00 grep --color=auto kee
问题描述:为负载均衡配置了ssl证书之后,修改win本地解析(10.0.0.5 cs.wp.com),导致网站无法访问
#原因是fastcgi文件配置了fastcgi_param HTTPS on;
1.注释
[root@web03 ~]# vim /etc/nginx/fastcgi_params
#fastcgi_param HTTPS on;
2.重启PHP
[root@web03 ~]# systemctl restart php-fpm.service
问题描述:为负载均衡配置了ssl证书之后,修改win本地解析(10.0.0.5 cs.wp.com),导致连接数据库失败
#原因是wordpress后台的域名记录
想要修改WordPress绑定的域名或者协议的话:
1.必须先登录WordPress后台
2.进入设置,修改WordPress地址(URL)和站点地址(URL)
3.使用新域名或者协议登录
问题描述:rsync客户端无法使用demon法师推送文件到rsync服务端
[root@nfs ~]# chmod 600 /etc/rsync.passwd
1.检查配置文件
[root@web01 ~]# vim /etc/httpd/conf/httpd.conf
2.发现80端口被占用,关闭掉该服务即可
[root@web01 ~]# systemctl stop nginx
[root@web01 ~]# systemctl start httpd
[root@web01 ~]# systemctl status httpd
问题描述:ansible使用playbook编辑httpd配置文件,权限异常
1.重新制定文件权限即可
[root@m01 ~]# vim /root/httpd/httpd.yml
...
mode: 0644
...
问题描述:handlers报错
解决方法:handlers缩进应当与tasks一致
问题描述:新安装的数据库不能直接连接
因为上次安装的数据库没有被完全卸载,可能还有残存的进程或文件
完全删除mysql数据库:
1.卸载mariadb安装包
[root@db01 ~]# yum remove -y mariadb*
2.删除相关文件
[root@db01 ~]# find / -name mysql|xargs rm -rf
[root@db01 ~]# rm -rf /etc/my.cnf.rpmsave
3.再次下载
[root@db01 ~]# yum install -y mariadb-server
4.连接
[root@db01 ~]# mysql
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 5.5.65-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
1.yum模块不能直接使用列表
2.可以使用loop代替with_items
问题描述:不能通过ansible直接操作数据库
1.因为ansible是用Python代码写的,在Python环境下工作,是用C语言编写的
2.想要ansible连接mysql数据库,要安装MySQL-Python软件包
3.ansible要操作哪台机器,就把这个包安装在哪
1.roles的依赖会改变角色原有触发条件,会导致功能压缩
no route to host 即为网络问题
在wordpress上传一张图片uploads出现多个png
一个server_name对应多个域名,类似于变量=数组
负载均衡
zabbix的登录
1.使用ip/zabbix登录
2.默认账号Admin,密码zabbix
3.查看服务端日志
tailf /var/log/zabbix-server
客户端日志
tailf /var/log/zabbix-agent
问题描述:在同一个数据库不能注册相同的数据表
1.把已经注册的服务器上的软件包打包,拷贝到别的服务器,解压覆盖
2.以后不在用下载的WordPress,用自己打包好的
yum localinstall -y ./*
zabbix部署相关
vmware下载和安装
1.不同的压缩软件可能会有不同的结果,有时候用zip压缩可能或造成部分目录丢失
优先解析index.html,其次解析index.jsp
解决方法:重新制作软件包,授权为统一的www用户,再次覆盖就不会出现覆盖的时候带来的权限问题
问题描述:ansible运行不报错,一直显示绿色,但是目录并没有创建
mysql表之间关系(一对多 一对一 多对多)的判定方法:
1.先站在一个表的角度,通过一条数据,看与另外一个表的数据的对应关系(一或者多)
2.再站在另一个表的角度,同样方法判断(一或者多)
问题描述:kibana无法访问,报错“Kibana server is not ready yet”,通过日志发现kibana一直在重启
#查看系统日志
[root@db01 ~]# tail -f /var/log/messages
#解决方法
1. 停止kibana
service kibana stop
2. 删除kibana索引
curl -XDELETE http://localhost:9200/.kibana*
3. 启动kibana
service kibana start
问题描述:使用docker search nginx,报错时间超时
#解决方法
[root@docer01 ~]# vim /etc/resolv.conf
search localdomain
nameserver 8.8.8.8
nameserver 114.114.114.114
#注意,需要把该文件中原来的配置注释掉,还有一点需要注意的是,重启网络(systemctl restart network),该文件被覆盖
问题描述:Xshell连接不了虚拟机,服务器sshd服务无法启动
解决方法有两个
1.授权
参考文档
[root@redis ~]# chmod 755 -R /var/empty/
[root@redis ~]# chown root.root -R /var/empty/
2.重装sshd
参考文档
yum install openssh-server
问题描述:数据库容器无法启动
systemctl restart docker