之前也在Linux上安装过两次,但是当我再次需要安装时,还是很多不懂的地方,于是记下此篇,以防下次再费经心思找到不合适的文章,瞎折腾。
通过参考这几篇文章,成功的安装好了自己的PHP(LNMP)环境。具体版本选择还是有区别的,对照安装时要注意分清。
首先我的具体的软件版本:centOS 7+nginx 1.8.1+php 7.1+mysql 5.7.17
1. 安装centos7:
http://www.cnblogs.com/smyhvae/p/3917532.html;
2. 安装部署PHP和Nginx:
http://www.jb51.net/article/109228.htm、
http://www.linuxidc.com/Linux/2016-09/134907.htm;
3. 安装MySQL:
http://www.linuxidc.com/Linux/2017-09/146659.htm、
http://blog.csdn.net/u014595668/article/details/50166277、
http://blog.csdn.net/skykingf/article/details/44776057;
其中遇到相关报错再具体解决,我遇到的问题及注意事项:
1、nginx报错找不到pid,主要是找不到配置文件,此时使用-c指定nginx.conf的文件位置;
2、注意文件所属者及其所属组是否与安装软件是配置的一致;
3、MySQL还有注意文件权限(第2点也要注意);
4、php.ini修改后要重启php-fpm,使用: /etc/init.d/php-fpm restart ;
5、Nginx配置修改后也是要重启Nginx服务的;
6、要注意nginx的配置文件nginx.conf中指定的user需要与php-fpm中的user一致。
如果是root用户,php-fpm是不允许使用root用户启动的,但是可以在启动php-fpm命令后面加-R参数执行,如:/usr/local/bin/php -R
主机与虚拟机共享文件夹:
主机是win10操作系统的话,是没有Hyper-V服务的,所以共享文件夹就变得跟win7的不大一样。虚拟机需要安装虚拟机工具(vmware tool),然后通过挂载光盘的方式:
手动挂载:
/usr/bin/vmhgfs-fuse .host:/ /mnt/win -o subtype=vmhgfs-fuse,allow_other
如果出现fuse: if you are sure this is safe , use the 'nonempty' mount option的错误
可以使用:/usr/bin/vmhgfs-fuse .host:/ /mnt/win -o nonempty -o allow_other
挂载之后,虚拟机重启之后要重新挂载一下,不然会找不到共享目录
解决每次需要手动挂载的问题:配置/etc/fstab文件(该文件会在系统启动的过程中自动执行文件里的配置信息)
vi /etc/fstab
添加下面这句: .host:/ /mnt/hgfs fuse.vmhgfs-fuse allow_other,defaults 0 0
其中 /mnt/hgfs是虚拟机安装vmware tool之后产生的挂载目录