资讯专栏INFORMATION COLUMN

在Linux Debian 8下部署基于PHP的Web项目。

jsummer / 754人阅读

摘要:前面有个保存信息窗口,随便选一个就好,之后出现以下界面这儿一般都为用户名确定后弹出以下窗口这个地方输入云服务器提供的密码。

折腾了大半天,总算把项目部署到了服务器上,这里写一篇文章记录一下,当作做学习笔记,同时也给其他想要部署项目的朋友一点思路。目前Linux系统的分支比较多,我了解到的目前分为Debian、Ubuntu等和RedHat、centnOS等。他们的主要操作命令都一样,个别会有所区别,所以这个教程可能不太适用于centOS等一些系统,但应该有参考价值!

一、概览和准备工作
我的项目是一个简单的手机商城,前端就是HTML+CSS+JS,外加一个Jquery,只适配了PC端。后端使用了PHP和MySql。所以在服务器上就需要LAMP环境(我们常说的Linux+Apache+MySql+PHP,其他的还有LNMP环境,就是Web服务器换成Nginx)。

必要的准备工作

Xshell+Xftp软件

一个云服务器

已经完成的项目代码和数据库数据

二、购买云服务器

目前国内有很多提供商,阿里、腾讯云等等,大家买的时候可以买境外的,比如香港,这个不用备案(备案要花一定时间),自己斟酌就好。我目前买的Vultr的。服务器的购买大家在网上就可以找到答案,这里就不在做篇幅讲解了!

三、下载Xshell和Xftp

Xshell用来连接服务器进行操作的,Xftp用来传项目到服务器。目前连接服务器和上传文件有很多种,这里我选了简单些的,其他方法大家可以去找找。

这里我给一个度盘地址给大家,下载下来安装好即可。
Xshell和Xftp
提取码:mcnl
四、使用Xshell连接服务器

下载安装好Xshell,打开软件即可,然后点击文件-新建连接。

在主机部分输入你购买的服务器的ip地址,然后连接即可。
前面有个保存信息窗口,随便选一个就好,之后出现以下界面

这儿一般都为root用户名
确定后弹出以下窗口

这个地方输入云服务器提供的密码。成功后就会显示出如下的界面,当然各个服务器提供商会有所区别。

五、安装相关环境 5.1 更新系统相关软件包

注: 命令在刚才连接好的shell窗口输入

apt-get update -y && apt-get upgrade -y

这一步可以保证我们的系统的软件是最新的版本。

5.2 安装Apache
apt-get install apache2 -y

安装完过后重启一下Apache

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来使之生效。

注:这里会涉及到部分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
六、使用Xftp上传项目文件到服务器

安装好Xftp后,点击Xshell上的如图所示的图标

打开Xftp后会显示服务器的目录信息


之后把你选择好的项目文件拖到你的文件里面就OK了,我这儿是elmarket文件夹。结构如下所示

七、导入数据到MySQL数据库

在Shell窗口输入以下命令:mysql -u root -p < /var/www/elmarket/mysite.sql来导入数据库信息

-u 后面是你的数据库用户,我这儿默认是root,根据个人情况自行修改。

-p 是你的用户密码,我这儿没有密码,所以为空(其实这样不好,尽量设密码,还有账户最好不要用root)。

< 后面是你的数据库脚本的路径。


如果没报错就代表成功了。

八、其他补充 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绑定到域名

域名楼主我买的阿里的域名,这个不复杂,大家到阿里购买即可,操作都非常简单。


如有错误请大家多多指正,最后上一张效果图,仿魅族的手机商城。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/30098.html

相关文章

  • 一键安装LNMP或LAMP Web环境实现Linux服务器部署 PHP MySQL Nginx/Ap

    摘要:目前,我们看到的老蒋采用的部署的环境,在镜像中配置,于是我们会称作为。有没有一件傻瓜式安装工具脚本呢这里老蒋要推荐的来自国内比较老牌且一直更新维护的一键安装包,我们可以较为直观且无人值守的安装需要的网站服务器环境。如今我们建站较多的还是会选择VPS云服务器,很少会去选择虚拟主机,固然前者有很多的优点。不过相比虚拟主机不同的是,VPS云服务器需要我们自己配置WEB环境,而且我们较多的还是会选择...

    IntMain 评论0 收藏0
  • 详细整理5款较为常用Linux VPS服务器WEB一键安装工具

    摘要:第一个人记忆中这款工具至今估计有十年左右时间当初也是个人站长为方便自己使用环境配置开发的。第二一键脚本也是由于个人站长提供的,经过几年的改善目前也是比较完善。 早年我们如果在Linux服务器配置网站环境的时候一般如何操作的?安装cPanel面板?这个是要花钱的,记忆中好像每个月需要十多美元,对于普通的个人站长用户来说确实是不小的费用。即便我们用破解版也不行,因为这个牵扯到安全问题。那我...

    techstay 评论0 收藏0
  • LAMP Web一键安装脚本 – Linux服务器安装Apache/MySQL/PHP网站环境

    摘要:前面老蒋有在网站中分享到一键安装包在服务器中部署网站运行环境,且我也有在文章中有提到那脚本也是支持安装的。今天老蒋要介绍的这个脚本是只能安装一键安装脚本,相比上面的这个脚本更为轻便一些,没有附带太多的内置软件。前面老蒋有在网站中分享到LNMP一键安装包在Linux服务器中部署PHP+MySQL+Nginx 网站运行环境,且我也有在文章中有提到那脚本也是支持安装LAMP的。今天老蒋要介绍的这个...

    starsfun 评论0 收藏0
  • Docker 实践(五):生产环境容器化

    摘要:不要用百度搜索中文资料,一定要看最新的英文资料。感谢感谢能容忍我无数次搞挂生产环境的老板。群蜗牛大神所建中文交流群,基本配置过程中遇到的问题都能得到解决。 前言 最近花了将近一个月的时间研究了 Docker 在生产环境中的使用,作为新手,期间走了无数的弯路,这里纪录一下,希望给别人带来微小的帮助。 前面几部分,介绍了在搭建集群之前需要做的一些工作,后面 一块结合实际应用,介绍如何架构...

    sydMobile 评论0 收藏0
  • DokuWiki引擎程序介绍

    摘要:在意识到发布和潜在问题之后,更新软件以解决缺陷,并防止可能的系统妥协。监控发布和维护所有软件的最新版本对于系统的安全性和完整性是至关重要的。 DokuWiki 是一个灵活且可扩展的 wiki 引擎,它的目标是易于管理,同时提供丰富的特性集,以便为所有技能级别和技术倾向的用户提供协作文档编辑和创建。DokuWiki 将 wiki 页面存储在 web 服务器上的文本文件中,而不是在数据库管...

    xiaolinbang 评论0 收藏0

发表评论

0条评论

jsummer

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<