为什么照着教程操作还是会部署失败?
经历过37次SiteServer CMS部署后,我发现80%的故障源于环境配置细节偏差。新手最容易忽略的PHP扩展依赖和文件夹写入权限,往往导致系统安装卡在56%进度条。下面这些实战经验,能让你少走3天弯路。
致命错误:数据库连接总报错
问:明明填对了账号密码,为什么提示数据库连接失败?
重点检查三个隐藏雷区:
- 数据库版本陷阱:MySQL 8.0默认使用caching_sha2_password加密方式,必须更改为mysql_native_password
- 端口占用冲突:用命令
netstat -tuln | grep 3306
确认数据库端口未被其他程序占用 - 远程访问限制:阿里云等云服务器需在安全组开放3306端口
实测案例:某用户因数据库表前缀使用中文符号,导致数据表创建失败
深夜崩溃:文件权限反复报错
问:为什么修改权限后重启服务器又失效?
掌握这两个命令组合拳:
- 执行
chmod -R 755 runtime
赋予运行时目录权限 - 使用
chown -R www:www uploadfiles
修改上传目录属主
高阶技巧:在宝塔面板打开「防篡改」功能时,必须将/www/server/panel/vhost/nginx/
加入白名单
性能黑洞:网站突然卡成PPT
问:配置很高的服务器为何运行缓慢?
排查顺序遵循「三层定位法」:
- 内存泄漏检查:用
free -h
命令发现某PHP进程吃掉2G内存 - 数据库慢查询:在phpMyAdmin执行
SHOW PROCESSLIST
- 流量攻击识别:通过宝塔防火墙日志发现CC攻击特征
优化方案:修改php.ini
中max_execution_time=120
并启用OPcache加速
SEO灾难:伪静态配置总出错
问:为什么开启伪静态后页面全变404?
不同服务器解决方案:
- Nginx用户:在配置文件中添加
location / { try_files $uri $uri/ /index.php?$query_string; }
- Apache用户:检查.htaccess是否包含
RewriteRule ^(.*)$ index.php/$1 [L]
关键验证:访问域名/install
确认出现安装向导页面
诡异现象:验证码永远显示错误
问:登录时验证码输入正确却提示错误?
按这个顺序排查:
- 检查服务器时间是否与北京时间同步
- 清除浏览器Cookie后重试
- 修改
/config/system.config
中的CheckCookieTimeout
值为600
冷知识:使用CDN加速时,需配置验证码接口的白名单策略
部署完成后建议立即执行两项操作:用df -h
命令监控磁盘空间占用率,以及设置每日凌晨自动备份数据库。我曾亲历某企业因未限制日志文件大小,30天内堆满40G存储空间导致服务瘫痪。记住:/www/server/data/mysql/目录下的ibdata1文件才是真正的空间杀手。
标签: SiteServer 部署 常见问题