使用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配置的問題均可以再留言問樓主!!!本人第一篇文章!但願你們多多支持

相關文章
相關標籤/搜索