前言
本人开发一直使用的是Windows系统(别问,问就是买不起mac),虽然微软推出了WSL(适用于 Linux 的 Windows 子系统),虽说Windows+WSL给开发者提供了便利,但是呢,相比于传统的Linux,又有很多不足之处。虚拟机才是永远滴神。
环境准备
- centos7
虚拟机可根据自己的习惯安装,本人用的是vagrant
安装LNMP
我这边使用的是LNMP一键安装包(当然,也可以自己编译安装,但是本人懒),简单实用。
下载lnmp安装包并安装
wget http://soft.vpser.net/lnmp/lnmp1.8.tar.gz -cO lnmp1.8.tar.gz && tar zxf lnmp1.8.tar.gz && cd lnmp1.8 && ./install.sh lnmp
如提示wget: command not found ,使用yum install wget 或 apt-get install wget 命令安装。
选择要安装的mysql、php、nginx版本后等待自行安装即可
问题
我安装的时候mysql没有安装成功
解决方案:
在lnmp安装包目录下执行
./install.sh db
虚拟机和本机互通
我用的虚拟机是Vagrant,启动的时候是NAT模式,本机和虚拟机无法互通,要修改网络连接方式为桥接模式
开启桥接模式
修改Vagrantfile文件,找到private_network
修改后
若ip不清楚,可不填写ip,使其自行分配ip
修改完成后重启虚拟机,显示桥接网卡就可以了
查看ip
ifconfg
本机ping虚拟机
ping 192.168.3.102
配置Nginx
配置nginx.conf文件
cd /usr/local/nginx/conf/
cp nginx.conf.default nginx.conf
vim nginx.conf
修改root为自己的入口文件
修改完成后重启nginx服务
nginx -s reload
在浏览器里访问
这里访问.html文件是没有问题的,但是访问.php文件会出错
访问.php文件
An error occurred
开启nginx的php服务
vim /usr/local/nginx/conf/nginx.conf
解开注释的代码,重启nginx
刷新浏览器,出现No input file specified.
No input file specified
再次修改nginx.conf文件
找到:
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; 改为:
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
配置虚拟域名
本机进入C:\Windows\System32\drivers\etc 修改hosts文件
重启本机的nginx服务
注意:修改nginx.conf文件后一定要重启nginx服务
complete!!!