首先,把生产环境的数据库导出并在本地导入。
然后,从git下载DiscuzX代码(假设路径为http://localhost/discuz/)
这个时候访问http://localhost/discuz/会跳转到install目录,这是因为没有复制生产环境的配置文件。下面Linux/Mac命令可把服务器(例子里的路径要根据各自情况修改)配置文件同步到本地:(Windows用户可用WinScp同步)
rsync -rv root@bbs.zrwh.org:/var/www/html/config/* ./
之后就可以访问 http://localhost/discuz/,但会报数据库连接错误。这是因为本地的MySQL没有创建和服务器一样的账号权限。我们可以选择修改配置文件或本地的MySQL账号密码。我选择了前者,因为修改MySQL账号密码会影响本地已有其它系统。但改配置要注意,不能把配置文件同步到生产环境。
接着,我们再刷新页面(http://localhost/discuz/)会看到./data/template访问错误。这是因为data目录没有写权限(Windows下可能不会遇到),使用下面命令修改:
chmod -R a+w upload/data
现在,我们可以访问论坛了,不过页面样式会有问题。但不要紧,我们可以看到文字,可以登录管理员用户。登录之后去管理中心清缓存之后,环境就正常了。
由于我们并没有同步生产环境里用户上传的文件,例如头像、附件之类。访问本地的复制版本会遇到缺失文件的情况,但总体上不影响本地运行和测试。
评论