老服务器apache项目迁Nginx

  1. 公司的老服务器总是三天两头被异地登录,都是以gust的身份,有一次吧系统的图标搞没了,phpstudy也运行不了了

  2. 还有一次最无语,服务器被挖矿了,让我去修复,我也没办法只能把数据库备份一下,安装了一个杀毒软件全盘杀毒,扫出了很多挖矿的程序。

  3. 直到前天,这台服务器的数据库被勒索了,我真是傻了,我上去一看mysql账号密码都是root。。。。。。

  4. 还好我很早之前备份了数据库文件,最近数据变动不多,损失不太严重。

  5. 跟我老师讲明这个情况,在做好新项目之后,更换服务器。

  6. 经过两天的摸索我再自己的服务器上成功搭建运行项目

  7. 现在记录一下,下次真正迁移的时候参考

  8. 原服务器用的windows+phpstudy,phpstudy用的apache运行项目。我想搭建宝塔使用nginx运行

  9. 把老服务器的项目下载下来,包括资源文件,图片等等,吧数据库到处顺便备份

  10. 宝塔新建一个网站,把老项目全部上传上去

  11. 新建数据库,把数据库数据导入,修改项目的数据库文件

  12. 转换apache伪静态配置,

  Options +FollowSymlinks
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ index.php?/$1 \\\[QSA,PT,L\\\]=================================转换成以下

location / {
    if (!-e $request_filename){
        rewrite  ^(.*)$  /index.php?s=$1  last;   break;
    }
}
```
  1. 或者可以在宝塔直接选择伪静态配置中选择响应的配置

  2. image.png

  3. 启动项目,查看是否报错

  4. 由于老项目用的是php5.4

  5. 新宝塔用的是php7项目用的是ThinkPHP3.2.3,系统报不支持MySQL

  6. 修改项目数据库类型

  7. image.png

  8. 特别要注意的是,有些项目使用ajax方式请求,不写error只会报错,不会显示错误信息。

  9. 一直404让我一度以为是我环境没整好,伪静态没整好。

  10. 需要去ajax写error打印出报错信息,对应修改!

  11. image.png