需把PHP网站从本地搬至云服务器之上,此事听闻起来较为复杂,实则无非是分三步来做:配置环境之行径,传输相关文件之举动,连接数据库之操作。只要依照步骤去进行,在一小时范围内便可使你的项目成功上线,他人借助域名即可访问到你所编写的代码。
准备服务器环境
对于登录至服务器首先要做的那一步,提议先去把软件包列表予以更新。运行“sudo apt update”这样一行能够让系统知晓存在可为安装的哪些新版本软件的命令。
在进行Apache以及PHP安装之际,务必要留意版本之间的匹配情况。去执行sudo apt install apache2这个操作,随后再开展PHP以及常用扩展的安装活动,其命令乃是sudo apt install php libapache2 - mod - php php - mysql php - curl php - gd。就数据库这一方面而言,MySQL能够运用sudo apt install mysql-server把它安装完成。完成安装之后,可千万别忘记去进行开机自启的设置,通过sudo systemctl start apache2以及sudo systemctl enable apache2这两条命令,能够保证该网站伴随着服务器启用来实现运行。
上传源码文件
将会把于本地开发完成的网站源码进行打包成为zip,如此一来传输速度便会快不少,运用scp命令去上传,其格式为scp your - site.zip用户名@你的服务器IP:/var/www/html/,要是你的服务器IP是指定的,那么命令诸如scp site.zip root@123.123.123.123:/var/www/html/。
登录服务器,之后进入/var/www/html/目录。首先解压文件unzip your-site.zip,接着将解压出来的文件全部移动到当前目录下。权限设置相当关键,运行chmod -R 755 /var/www/html/以使Web服务器具备读取文件的权限,再运用chown -R www-data:www-data /var/www/html/把文件所有者变更为Apache运行用户。
配置数据库并导入数据
用于登录MySQL的命令是mysql -u root -p,将安装时所设置的root密码输进去便可进入数据库管理界面,借助CREATE DATABASE 网站数据库名;来创建一个新数据库,像CREATE DATABASE myblog;这样。
接下来进行创建专用用户并赋予权限的操作,这三条指令是需要连贯执行的:首先执行CREATE USER '用户名'@'localhost' IDENTIFIED BY '密码';,之后执行GRANT ALL PRIVILEGES ON 数据库名.* TO '用户名'@'localhost';,最后执行FLUSH PRIVILEGES;以此使得权限能够生效。在退出MySQL这个操作完成之后,运用mysql -u 用户名 -p 数据库名 < 本地导出的sql文件.sql这样的命令去进行数据导入,当系统提示输入密码之后,便开始进行导入操作了。
修改配置文件连接数据库
在PHP项目之中,放置数据库连接信息的那个文件,常处于/var/www/html/这个目录里面,常见的名字是config.php、database.php或者wp-config.php这类的。把文件找到之后,使用vim进行编辑,例如编辑/var/www/html/config.php,用vim /var/www/html/config.php。
文件之中存在着几行关键的代码,需要去寻找到数据库地址、库名、用户名以及密码这几个参数。将数据库地址替换成为localhost,把数据库名改为刚才所创建的那个,用户名和密码同样也要换成新设置的。修改完成之后,按下ESC键,输入:wq进行保存并退出操作。再使用php -l config.php去检查一下语法情况,要是没有报错的话,那就表明配置文件是没有问题的。
配置Web服务器虚拟主机
进到Apache的虚拟主机配置目录,也就是cd /etc/apache2/sites-available/ ,将默认配置当作模板进行复制,执行sudo cp 000-default.conf your-site.conf ,对这个新文件予以编辑,重点修改ServerName和DocumentRoot这两处,ServerName填写你的域名或者IP,DocumentRoot指向网站根目录/var/www/html。
保存配置文件之后,借助sudo a2ensite your-site.conf来启用此站点,要是有需要能够通过sudo a2dissite 000-default.conf禁用默认站点。最终运用sudo systemctl restart apache2重启Apache,以使新配置发挥效用。倘若域名尚未解析,能够于本地电脑修改hosts文件先行测试。
测试网站访问与调试错误
直接于浏览器当中输入服务器公网IP,若能看到网站首页便算成功了。要是出现白屏情形,就马上查看错误日志tail -f /var/log/apache2/error.log,具体的报错信息将会显示于此。常见的问题涵盖着PHP扩展缺失这种情况,比如需要gd库实际却未安装,在这个时候运用sudo apt install php-gd进行安装之后再重启Apache便可。
常常会碰到路径方面的问题,去核查源码当中的include和require语句,以此保证相对路径是准确无误的。当数据库连接出现异常无法成功连接时,先去确认MySQL服务的运行状态,利用systemctl status mysql这条命令,之后再借助命令行开展测试登录操作。要是远程连接不幸被拒绝了,那就检查一下MySQL配置里的bind-address是不是设定成了127.0.0.1。
部署PHP网站之际,你所经历的最令人头疼的问题究竟是什么呢?是环境配置出现报错状况,又或者是数据库连接无法成功呢?欢迎于评论区分享你遭遇问题掉入坑中的过往经历,点赞并收藏这篇文章,下次进行部署之时能够随时翻找出来对照着去操作。


还没有评论,来说两句吧...