折腾了大半天,总算把项目部署到了服务器上,这里写一篇文章记录一下,看成作学习笔记,同时也给其余想要部署项目的朋友一点思路。目前Linux系统的分支比较多,我了解到的目前分为Debian、Ubuntu等和RedHat、centnOS等。他们的主要操做命令都同样,个别会有所区别,因此这个教程可能不太适用于centOS等一些系统,但应该有参考价值!
1、概览和准备工做
个人项目是一个简单的手机商城,前端就是HTML+CSS+JS,外加一个Jquery,只适配了PC端。后端使用了PHP和MySql。因此在服务器上就须要LAMP环境(咱们常说的Linux+Apache+MySql+PHP,其余的还有LNMP环境,就是Web服务器换成Nginx)。
必要的准备工做
Xshell+Xftp软件
一个云服务器
已经完成的项目代码和数据库数据
2、购买云服务器
目前国内有不少提供商,阿里、腾讯云等等,你们买的时候能够买境外的,好比香港,这个不用备案(备案要花必定时间),本身斟酌就好。我目前买的Vultr的。服务器的购买你们在网上就能够找到答案,这里就不在作篇幅讲解了!php
3、下载Xshell和Xftp
Xshell用来链接服务器进行操做的,Xftp用来传项目到服务器。目前链接服务器和上传文件有不少种,这里我选了简单些的,其余方法你们能够去找找。html
这里我给一个度盘地址给你们,下载下来安装好便可。
Xshell和Xftp
提取码:
mcnl
4、使用Xshell链接服务器
下载安装好Xshell,打开软件便可,而后点击文件-新建链接。
在主机部分输入你购买的服务器的ip地址,而后链接便可。
前面有个保存信息窗口,随便选一个就好,以后出现如下界面
这儿通常都为root用户名
肯定后弹出如下窗口
这个地方输入云服务器提供的密码。成功后就会显示出以下的界面,固然各个服务器提供商会有所区别。
前端
5、安装相关环境
5.1 更新系统相关软件包
注: 命令在刚才链接好的shell窗口输入mysql
apt-get update -y && apt-get upgrade -y
这一步能够保证咱们的系统的软件是最新的版本。sql
5.2 安装Apache
apt-get install apache2 -y
安装完事后重启一下Apacheshell
systemctl restart apache2
重启Apache事后,不出意外,咱们就能够在浏览器输入服务器的ip地址,就会看到默认的展现页面,默认状况下,Apache的入口目录在/var/www/html下,项目须要传到这个目录下才会生效,若是想要自定义本身的目录,能够按如下方法修改。数据库
在命令窗口输入 cd /etc/apache2/sites-available 进入到这个目录,输入 ls 会看到一个 000-default.conf 的文件,使用如下命令来编辑改文件:vi 000-default.conf。(vi命令你们在网上查一下,这里再也不赘述)。打开后再到 DocumentRoot /var/www/html 这行改为你想要的路径保存便可。改了事后记得重启一下Apache来使之生效。apache
注:这里会涉及到部分Linux的命令,如新建文件夹,删除、移动文件这些,你们查资料就OK,不会特别复杂。
网上有自定义的配置站点的方式,我试过可是没成功,因此采用了这种办法来改目录,若是你们有成功案例或者好的资料和方法,能够评论区分享下,谢谢!
5.3 安装MySQL数据库
apt-get install mysql-server -y
以后弹出以下页面
这里叫你输入密码,若是你不想设置密码一直回车就ok。后端
数据库先配置到这儿。后面还有导入数据。浏览器
5.4 安装PHP
apt-get install php5 php-pear -y
5.4.1 建立PHP日志目录,赋予Apache用户全部权
mkdir /var/log/php
chown www-data /var/log/php
5.4.2 安装支持MySQL的扩展
apt-get install php5-mysqlnd -y
这个地方网上有不一样的安装命令,如:apt-get install php5-mysql -y,据我测试这个扩展不支持mysqli_fetch_all()这样的函数。还有apt-get install php56w-mysqlnd -y这样的,但我没有测试,不知道效果。同时php5-mysql和php5-mysqlnd不能同时安装。
5.4.3 重启Apache
systemctl restart apache2
6、使用Xftp上传项目文件到服务器
安装好Xftp后,点击Xshell上的如图所示的图标
打开Xftp后会显示服务器的目录信息
以后把你选择好的项目文件拖到你的文件里面就OK了,我这儿是elmarket文件夹。结构以下所示
7、导入数据到MySQL数据库
在Shell窗口输入如下命令:mysql -u root -p < /var/www/elmarket/mysite.sql来导入数据库信息
-u 后面是你的数据库用户,我这儿默认是root,根据我的状况自行修改。
-p 是你的用户密码,我这儿没有密码,因此为空(其实这样很差,尽可能设密码,还有帐户最好不要用root)。
< 后面是你的数据库脚本的路径。
若是没报错就表明成功了。
8、其余补充
8.1 关于请求PHP文件报500的错误
若是php文件里面报错,默认状况浏览器会反馈500错误,看不到错误信息。这里给你们一个设置方式,使浏览器能够返回错误信息。
输入
cd /etc/php5/apache2,输入
ls能够看到
php.ini文件,使用
vi php.ini 打开该文件并找到
display_errors = Off将其改成
On,以后重启Apache服务器。这样咱们就能够看到报错信息了。
8.2 经常使用的命令
mysql -V 查看mysql版本
php -v 查看php版本
php -m 查看php扩展
apache2 -v 查看Apache版本
8.3 服务器ip绑定到域名
域名楼主我买的阿里的域名,这个不复杂,你们到阿里购买便可,操做都很是简单。
若有错误请你们多多指正,最后上一张效果图,仿魅族的手机商城。