使用vagrant搭建linux下php开发环境

由于本身也在用vagrant配置php环境,因此试了不少遍也看了不少资料后我本身整理了一篇关于vagrant配置服务器的文章php

准备

本文告诉用户如何配置LAMPmysql

Linux
Apache
Mysql
PHPlinux

本文语句前输入的$#都是要在Ubuntu环境下不一样权限输入的意思。sql

Oracle VirtualBox (推荐这个,可是不推荐装最新版本,对WIN7不太友好不少不兼容问题)
Vagrant (安装BOX的环境)
Xshell (SSH登陆)shell

开始

安装好以上两个环境以后数据库

vagrant -v //查看vagratn版原本检查是否安装成功!

vagrant box add base uri // base为box名称,uri为box的路劲, 你能够能够在vagrant网站上拷贝路劲可是可能下载特别慢

vagrant init base // 创建vagrantfile文档

编辑 Vagrantfile 文件

第15行 => config.vm.box = base //通常写了 vagrant init base 后就不须要修改了
第25行 => config.vm.network "forwarded_port", guest: 80, host: 8080//若是有IP冲突等问题 能够修改host
第40行 => config.vm.synced_folder "./data", "/vagrant" //./data 为本地文档路劲, /vagrant 为他在linux里的路劲

配置好vagrant,接来下去启动这个虚拟环境。apache

vagrant up //启动虚拟机 
  
vagrant ssh //ssh访问讯息

接下来使用 ssh 登陆到虚拟机里面,关于ssh,,我是用Xshell登陆的,比较方便,能够用最新版。
通常来讲不出意外下载到的包都是装好LAMP只需update一下直接能够运行的
在这以前你能够检查一下是否已经安装好这些东西ubuntu

$php -v //检查php安装状况
$apache2 -v //检查apache是否安装完毕
$mysql --version //检查mysql是否安装完毕    
$sudo apt-get update //来升级系统的一些包.

若是php和apache检测不到那就开始安装吧。vim

$sudo apt-get install apache2 php5 libapache2-mod-php5 //安装apache

安装好以后再检测php版本信息安全

安装 mysql

$sudo apt-get install mysql-server mysql-client php5-mysql //mysql

中间时候会须要你输入 mysql 客户端用户名密码的,随意填写就好(原做者虽然这么说可是我运行的时候并没告知我须要输入账密)

$mysql --version //成功打印

这个时候还须要咱们去修改下 apache2 配置文件, #vim /etc/apache2/sites-enabled/000-default.conf

修改文档的时候你须要了解vim

这里我就不一一赘述了,贴一个台湾同胞的帖子领悟一下:
http://linux.vbird.org/linux_...

修改 DocumentRoot

<VirtualHost *:80>

    <Directory /var/www>
        Options -Indexes +followSymLinks +MultiViews
        AllowOverride all
        Require all granted
    </Directory>

 </VirtualHost>

#sudo service apache2 restart //重启apache服务

访问 vagrantfile文档里的第29行设定的ip地址就能够看到第40行./data的页面了!

数据库导入方法

若是你是有数据库的那么你可能须要如下几个操做

进入linux环境下访问mysql

$mysql -u root -p //访问mysql的时候须要输入你设定的密码

show databases; //显示全部数据库

create database [database name]; //建立数据库

drop database [database name]; //删除数据库

use [database name]; //使用该数据库,到达该目录下才好去作相应操做

source [sql file url]; //导入数据库资料

接下来使用这个高级帐户去建立一个子帐户,由于不可能用这个最高权限的帐户去管理数据库,不安全。

create user 'username'@'localhost' identified by 'password'; //建立子帐户

grant privileges on databasename.tablename to 'username'@'localhost' identified by 'password'; //受权某个数据库的某个表给某个帐户

此处介绍下privilege,privilege能够理解为权限或者所能够拥有的功能

SELECT/UPDATE/INSERT/DELETE/CREATE/DROP

databasename.tablename:若是你要指定某个table给某个用户
databasename.*:将全部table给到某个帐户,请自行斟酌

销毁

vagrant box list //查看全部box

vagrant destroy [box name]//销毁指定box

而后去 C 盘用户目录下的

.vagrant.dboxesubuntu-VAGRANTSLASH-trusty64

VirtualBox VMslearn-vagrant_default_1448508213520_63818

删除这两个文件夹就 ok 了!

尾注

若是有遇到什么vagrant配置的问题均可以再留言问楼主!!!本人第一篇文章!但愿你们多多支持

相关文章
相关标签/搜索