WIN10 vagrant和virtualbox虛擬機和一鍵搭建lnmp環境配置thinkphp虛擬主機
版本:win10系統
virtualbox:5.1.26
vagrant :1.9.7
centos 7.0
xshell/git
首先下載好對應版本的軟件
配置vagrant和virtualbox
一.把虛擬機加載到box容器中
vagrant box add CentOs7.0 D:\soft\Vagrantfile\package.box
CentOs7.0 是給虛擬機起的名字 D:\soft\Vagrantfile\package.box 是box路徑也就是centos7.0
二.找一個/新建一個目錄,例如vagrant,然後初始化環境
#新建目錄 mkdir vagrant #打開此目錄 cd vagrant #初始化,CentOs7.0 為你上方設置的名字 vagrant init CentOs7.0
初始化成功後,本目錄下會出現Vagrantfile這樣一個文件,這個是vagrant的配置文件,後續的配置在這裏修改
三.修改配置文件
1. 網絡配置 端口映射,意思是將虛擬機的端口映射到主機的端口上,主機局域網內可以通過訪問這個端口來訪問到你虛擬機上的東西
config.vm.network "forwarded_port", guest: 80, host: 8080 打開註釋
上述作用是將虛擬機的80端口映射到主機的8080端口上,那我直接訪問主機的8080端口就相當於訪問虛擬機的80端口
2.私有網絡,只有主機才能訪問虛擬機,主句局域網內成員不能訪問的虛擬機的內容
config.vm.network "private_network", ip: "192.168.33.11" 打開註釋
3. 共享目錄 ../www是本地的文件 映射到/home/wwwroot/default
config.vm.synced_folder "../www", "/home/wwwroot/default"
四.啟動虛擬機
vagrant up
輸出:
==> default: Clearing any previously set forwarded ports... ==> default: Clearing any previously set network interfaces... ==> default: Preparing network interfaces based on configuration... default: Adapter 1: nat default: Adapter 2: hostonly ==> default: Forwarding ports... default: 22 (guest) => 2222 (host) (adapter 1) ==> default: Running ‘pre-boot‘ VM customizations... ==> default: Booting VM... ==> default: Waiting for machine to boot. This may take a few minutes... default: SSH address: 192.168.33.11 default: SSH username: vagrant default: SSH auth method: private key .......
如果不報錯的話就是啟動成功了...
五.連接虛擬機使用(xshell/git)工具
ip:192.168.33.11(上面設置的私有網絡)
用戶名:vargant 密碼是私鑰 文件位置:D:\vagrant1\.vagrant\machines\default\virtualbox\private_key
(也可以在Vagrantfile文件中設置登錄密碼和用戶名
config.ssh.username = "vagrant"
config.ssh.password = "vagrant"
用xshell工具登錄時的用戶名和密碼)
然後使用vagrant status 命令,查看是否正在運行。
搭建lnmp環境一鍵安裝嘻嘻嘻
附上:lnmp官網 https://lnmp.org/install.html
1. yum install screen
screen -S lnmp
2. 下載並安裝LNMP一鍵安裝包:
wget -c http://soft.vpser.net/lnmp/lnmp1.4.tar.gz && tar zxf lnmp1.4.tar.gz && cd lnmp1.4 && ./install.sh lnmp
如提示wget: command not found ,使用yum install wget 或 apt-get install wget 命令安裝。
根據提示操作
3、安裝完成
如果顯示Nginx: OK,MySQL: OK,PHP: OK
lnmp環境安裝完成
********lnmp環境搭建完成後想要訪問項目就要配置虛擬主機
LNMP添加、刪除虛擬主機及偽靜態
附上官網:https://lnmp.org/faq/lnmp-vhost-add-howto.html
第一步/ 添加網站(虛擬主機)
lnmp vhost add
根據提示操作
虛擬主機配置文件在:/usr/local/nginx/conf/vhost/域名.conf
列出網站(虛擬主機) lnmp vhost list
第二步/ 配置本地host文件
win10:
C:\Windows\System32\drivers\etc\host文件
如果沒有權限用管理員身份運行記事本,在記事本中打開host文件保存即可.
192.168.33.11 wzy.com
此時可以使用瀏覽器訪問wzy.com [完成]
這時訪問thinkphp文件會出現只能訪問首頁,項目其他頁面都報404,解決方法是要引入偽靜態
1.偽靜態操作(訪問項目要引入對應的偽靜態文件)
偽靜態規則文件需要放在/usr/local/nginx/conf/ 下面。(一鍵安裝包提供了laravel.thinkphp等等偽靜態)
添加的虛擬主機,打開後前半部分配置會顯示如下:
在root /home/wwwroot/www.vpser.net;這一行下面添加:
include thinkphp.conf;
上面的thinkphp.conf為偽靜態文件,如需要其他偽靜態文件自己創建個並上傳到/usr/local/nginx/conf/ 下面並include 偽靜態.conf; 加完保存
執行:/etc/init.d/nginx restart 重啟生效,如果報錯可能是添加有誤或偽靜態規則有誤。
這時候就能正常訪問項目了.
使用Navicat連接mysql時候沒有權限訪問,報1130 解決方法:
Linux下MySQL Error 1130 不能遠程訪問
使用xshell工具連接mysql
mysql -u root -p password
use mysql;
update user set host = ‘%‘ where user = ‘root‘; //這個命令執行錯誤時可略過
flush privileges;
select host, user from user; //檢查‘%’ 是否插入到數據庫中
quit;
vagrant命令:
vagrant up開啟虛擬機
vagrant halt 關閉虛擬機
vagrant reload 重啟
註意:關機前一定要關閉虛擬機
可以寫兩個bat腳本放到桌面
啟動環境:
關閉環境:
使用時雙擊即可.
WIN10 vagrant和virtualbox虛擬機和一鍵搭建lnmp環境配置thinkphp虛擬主機