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脚本放到桌面
启动环境:
关闭环境:
使用时双击即可.