本地搭建一个lnmp开发环境
先去安装一个适合在 CentOS 7 上面使用的 ius 仓库,这样我们就可以使用 yum 去安装比较新的软件包了。
sudo yum install https://centos7.iuscommunity.org/ius-release.rpm -y
NGINX
再去安装一下 NGINX:
sudo yum install nginx -y
启动一下它,再让他开机启动:
sudo systemctl start nginx
sudo systemctl enable nginx
MariaDB
下面再安装一下 MariaDB,我想安装 ius 仓库上的新版的 mariadb ,先删除掉系统自带的 mariadb:
sudo yum remove mariadb-libs -y
再安装一下新的 MariaDB:
sudo yum install mariadb101u-server -y
启动一下它,再让它开机自启动:
sudo systemctl start mariadb
sudo systemctl enable mariadb
执行一安全配置:
mysql_secure_installation
回答一些问题,设置一下数据库管理系统的 root 用户的密码,首次密码为空。
PHP 7
下面再去安装一下 PHP 还有一些比较常用的扩展:
sudo yum install php71u-fpm php71u-cli php71u-xml php71u-gd php71u-mysqlnd php71u-pdo php71u-mcrypt php71u-mbstring php71u-json php71u-opcache -y
启动一下 php-fpm,再让它开机自启动:
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
配置
下面去创建一个虚拟主机,让它可以执行 PHP,我们需要创建一个可以执行 PHP 的 NGINX 配置文件。先去创建一个 PHP 文件:
mkdir -p /vagrant/www/default
vi /vagrant/www/default/phpinfo.php
在里面添加一个 phpinfo 函数,保存一下文件。
再去创建一个 NGINX 配置文件:
sudo vi /etc/nginx/conf.d/php.basic.conf
添加下面内容:
server {
listen 80;
server_name 192.168.0.111;
root /vagrant/www/default;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}
}
保存一下,重新加载一下 NGINX:
sudo systemctl reload nginx
测试
打开浏览器,输入服务器的 IP 地址,后面加上一个 phpinfo.php,在页面上会显示一些跟 php 相关的信息 , 说明我们成功的配置了一个 LEMP 环境。
权限
Vagrant 会给我们在虚拟机与本地电脑之间设置一个共享的目录,默认这个目录在本地电脑就是项目的根目录,在虚拟机上这个共享的目录是 /vagrant ,这个目录的拥有者与用户组都会是 vagrant。注意我们不能在虚拟机上修改这个目录的权限,所以,如果你的网站应用放在这个目录的下面或者它下面的某个子目录里面,你需要把运行 PHP-FPM 这个服务的用户修改成 vagrant。
编辑一下 php-fpm 的配置文件:
sudo vi /etc/php-fpm.d/www.conf
搜索一下 user,等号右边的值就是运行 PHP-FPM 这个服务的用户,默认应该是 php-fpm,我们需要把它改成 vagrant :
user = vagrant
保存配置文件,重新启动一下 PHP-FPM:
sudo systemctl restart php-fpm