lamp环境搭建出坑记

lamp虽然大家都懂,但是还是要解释一下先,要做的是一个狭义的解释,以对应我们即将搭建的环境。

L指linux(ubuntu)、

A指apache(apache2)、

M指mysql(mariadb)、

P 指p开头的众多语言(php)

在所有安装开始之前,以防万一,先更新一下安装源

sudo apt-get update

1、L

ubuntu在手,linux已有。

2、A

apache2安装。

打开终端模拟器(ctrl+alt+t),

输入

sudo apt-get install apahce2

中间输一次Y,确定即可,apahce2的安装并没啥坑,

自此apache2安装完毕!

apache2 -v

来查看apache2是否安装成功。

apahce2的启动、停止和重启:

sudo service apache2 start

sudo service apache2 end

sudo service apache2 restart

3、M

mariadb安装。

mariadb是mysql的一个分支版本,是在mysql被oracle收购后,mysql的大牛、之父们出来单干的免费开源数据库,完全兼容mysql。

选择mariadb是因为我通过apt-get install mysq,导入数据库的时候总是报错(datatime类型无法插入),所以怀疑是mysql版本导致的,然后仔细百度了一下,才发现mariadb已经悄无声息的侵占了mysql的大部分使用场景,包括集成lampp里面包含的也是mariadb(lampp是一个集成的lamp环境,后面我也会介绍一下它的安装与使用)。

继续讲mariadb怎么安装。

打开终端模拟器(ctrl+alt+t),

依次执行

sudo apt-get install software-properties-common

sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8

sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://mirrors.tuna.tsinghua.edu.cn/mariadb/repo/10.1/ubuntu xenial main'

sudo apt-get update

sudo apt-get install mariadb-server mariadb-client

中间会让输入数据库密码和确认密码,然后mariadb就安装成功了!

但是如果你不幸的已经安装了mysql,又想卸载掉重装mariadb,那么你已入坑。 如果不把mysql卸载干净的话,即使安装了mariadb也会一直报错无法启动。

ubuntu里把一个软件卸载干劲比较麻烦。

sudo apt-get purge mysqlserver

sudo apt-get autoremove

sudo apt-get clean

dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P

sudo apt-get remove --purge mysqlserver

sudo remove msql*

sudo apt-get update

这么多命令加持,卸载干净应该不成问题了。

然后在重新安装mariadb即可。

maridb安装完成以后,命令操作全部和熟悉的mysql一致了。

mariadb开始、停止和重启:

sudo service mysql start

sudo service mysql end

sudo service mysql restart

4、P

php安装。

通过sudo apt-get install php安装的是php7.0的版本,不是很建议安装php7.0,因为一个公司的框架一般都是会用很多年的,太新的php版本可能会造成很多兼容性的问题,我使用的thinkphp3.1.3框架在php7.0就无法正常运行。所以,谨慎期间,我建议安装php5.6的版本。

依次执行以下命令:

sudo add-apt-repository ppa:ondrej/php

sudo apt-get update

sudo apt-get install php5.6

php5.6安装以后还需要建立和apache2和mysql的关系,同时也需要安装一些必要的拓展库。

sudo apt-get install libapache2-mod-php5.6 php5.6-mysql

拓展库的话,按需安装(我装了这两个常用的):

sudo apt-get install php5.6-curl php5.6-gd php5.6-xsl

之后要重启以下apache2和mysql。

sudo service apache2 restart

sudo service mysql restart

至此lamp环境搭建完毕!


番外篇:

搭建完了lamp环境不测一下怎么能行!

apache2的默认网站路径在 /var/www/html下。

通过cd命令也好,图形界面直接点进去也行,在该目录新建一个*.php文件,

通过浏览器输入localhost/*.php访问。

如果访问不到,多半是权限问题,可以通过命令赋予项目目录最高权限

sudo chmod 777 -R /var/www/html

一个ubuntu phper的自我修养(lamp)的更多相关文章

  1. 一个ubuntu phper的自我修养(杂记)

    ubuntu使用杂记 1.flatabulous安装使用. flatabulous是一个ubuntu图标主题. 使用它,必须得安装tweak插件. sudo add-apt-repository pp ...

  2. 一个ubuntu phper的自我修养(ubuntu安装)

    ubuntu安装篇 一.ubuntu下载 到ubuntu官网下载适合自己电脑配置的系统版本,此处不做展开. 二.制作USB启动盘 在windows下制作USB启动盘,工具是universal usb ...

  3. 一个ubuntu phper的自我修养(workbench)

    workbench从此和navicat的激活码说再见 workbench是一个免费易用功能强大的mysql图形化管理软件,navicat上用到的功能,workbench上都能找到. 一.workben ...

  4. 一个ubuntu phper的自我修养(atom)

    将atom打造成二十一世纪最装那啥的php IDE 之前在windows平台使用的php IDE一直是eclipse for php,因为之前做java开发,所以对eclipse很有感情,debug. ...

  5. 第八周读书笔记(人月神话X月亮与六便士)——到底什么才是一个程序员的自我修养?

    写了这么久的读书笔记,涉及到问题大多是一些如何把软件工程做好,如何把自己的职业生涯做好.但总感觉逻辑链上缺了一环,亦即:我们为什么要把软件工程做好,我们成为一名优秀的职业生涯的意义到底在于什么?我觉得 ...

  6. 《web全栈工程师的自我修养》读书笔记

    有幸读了yuguo<web全栈工程师的自我修养>,颇有收获,故在此对读到的内容加以整理,方便指导,同时再回顾一遍书中的内容. 概览 整本书叙述的是作者的成长经历,通过经验的分享,给新人或者 ...

  7. 程序员的自我修养(2)——计算机网络(转) good

    相关文章:程序员的自我修养——操作系统篇 几乎所有的计算机程序,都会牵涉到网络通信.因此,了解计算机基础网络知识,对每一个程序员来说都是异常重要的. 本文在介绍一些基础网络知识的同时,给出了一些高质量 ...

  8. GIS制图人员的自我修养(2)--制图意识

    GIS制图人员的自我修养(2)--制图意识 by 李远祥 上次提及到GIS制图人员的一些制图误区,主要是为GIS制图人员剖析在制图工作中的一些问题.但如何提高制图的自我修养,却是一个非常漫长的过程,这 ...

  9. GIS制图人员的自我修养(1)--制图误区

    GIS制图人员的自我修养 by 李远祥 最近一直坚持写GIS制图的技术专题,并不是为了要介绍有什么好的技术和方法去制图,而是要告诉所有从事这一方向的人员一个铁铮铮的实现--要做好GIS制图,必须加强自 ...

随机推荐

  1. 【Git学习笔记】初始化Git仓库和版本回退

    学习地址 http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 什么是版本库呢?版本库又 ...

  2. 【转】监听按钮除OnClick外其他事件的方法,附简易改编的UIButton类

    http://lib.csdn.net/article/unity3d/38463 作者:IceFantasyLcj 大家好,我是雨中祈雨.一直以来,CSDN都是我最好的编程助手.这是我在CSDN的第 ...

  3. fullpage 插件学习心得

    fullpage.js 是一个基于jquery 的插件,它能够轻松的制作出高大上的全屏网站,主要功能有; 1.支持鼠标滚动 2.支持前进后退和键盘控制 3.多个回调函数 4.支持 CSS3 动画 5. ...

  4. vuejsLearn--- v-for列表渲染

    Vue.js是一个构建数据驱动的web界面的库.重点集中在MVVM模式的ViewModel层,因此非常容易与其它库或已有项目整合 Vue.js 的核心是一个响应的数据绑定系统,它让数据与DOM保持同步 ...

  5. CSS之伪类

    1. :link                     向未被访问的链接添加样式 :visited                向已被访问的链接添加样式 :hover               ...

  6. LeetCode House Robber III

    原题链接在这里:https://leetcode.com/problems/house-robber-iii/ 题目: The thief has found himself a new place ...

  7. Android 解析Json_fastJson

    FastJSON是一个很好的java开源json工具类库,相比其他同类的json类库,它的速度的确是fast,最快!但是文档做得不好,在应用前不得不亲测一些功能.   实际上其他的json处理工具都和 ...

  8. JQuery插件开发简单实例

    经常使用Jquery的各种插件,却对如何开发插件一无所知,以为是一件很麻烦的事儿?其实不然,下面通过一个简单的实例,来看一下Jquery Plugin的开发. 先看DEMO:动画菜单 不用插件如何实现 ...

  9. centos6.4 挂载新盘并移动mysql数据目录

    1 centos 挂载新盘并格式化 以vmware workstation12 中安装的centos6. 虚拟机为例进行演示 关机,添加硬盘 开机,格式化硬盘,并挂载 通过命令查看硬盘 fdisk – ...

  10. UDP server & client

    Server: import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; ...