全新Linux服务器安装Nginx&PHP&MySQL环境
来源:互联网 发布:淘宝我的发票在哪里看 编辑:程序博客网 时间:2024/06/08 01:26
1、Nginx环境安装
最简单的方式——通过yum安装:
yum install nginx
这种方式的缺点是,安装完成后Nginx相关的文件并不会统一放置在一个目录中,而是按照RPM默认安装路径分散放置。
RPM默认安装路径如下:
通过下面两个命令查找Nginx安装位置:
rpm -qa | grep nginx //查找Nginx完整包名rpm -ql nginx-1.12.2-1.el7_4.ngx.x86_64 //查找Nginx安装位置
结果如下,通常我们安装程序是把同一程序的文件放在一起,而不管它们的功能是否一致;这里是把相同功能的文件放在一起,而不管是不是同一程序。
Nginx主程序在/usr/sbin/nginx,配置文件在/etc/nginx/nginx.conf,日志文件在/var/log/nginx。
启动方式有两种:
- 执行主程序文件来启动Nginx:
/usr/sbin/nginx -c /etc/nginx/nginx.conf //-c参数用来指定配置文件
- 以服务方式启动Nginx:
service nginx start
这里会提示:Redirecting to /bin/systemctl start nginx.service,那就按照它的提示,执行该命令后Nginx启动。
同理停止/重启/重新加载配置命令为:/bin/systemctl [stop]|[restart]|[reload] nginx.service
2、PHP环境安装
从PHP官网(http://php.net)上找到下载地址,通常会找到国内镜像:http://cn2.php.net/get/php-7.1.11.tar.gz/from/this/mirror
在linux上使用wget命令下载
wget http://cn2.php.net/get/php-7.1.11.tar.gz/from/this/mirror
看到URL被302重定向到真实地址:http://cn2.php.net/distributions/php-7.1.11.tar.gz
等待下载完成即可。
下载到的mirror文件实际上是.tar.gz格式的文件,重命名该文件 mv mirror php-7.1.11.tar.gz
,然后解压 tar -zxf php-7.1.11.tar.gz
(安装教程参考官方文档 http://php.net/manual/zh/install.unix.nginx.php)
(中文版个别命令有误,以英文版为准。如配置PHP时,应当执行 ./configure --enable-fpm --with-mysqli
)
在PHP文件目录下执行:./configure --enable-fpm --with-mysqli
,可能会遇到以下问题,解决后重新执行该命令,直到出现“Thank you for using PHP”和“License”,
安装遇到的问题:
configure: error: no acceptable C compiler found in $PATH
即没有C编译器,所以要先安装GCC:
yum install gcc
configure: error: xml2-config not found. Please check your libxml2 installation
找不到xml2-config,还要先安装libxml2和libxml2-devel:
yum install libxml2 libxml2-devel
继续执行 make
、make install
复制配置文件到指定位置:
cp php.ini-development /usr/local/php/php.inicp /usr/local/etc/php-fpm.conf.default /usr/local/etc/php-fpm.confcp sapi/fpm/php-fpm /usr/local/bin
配置php.ini文件:cgi.fix_pathinfo=0
但是按照官网提示配置/usr/local/etc/php-fpm.conf文件时,文件中并没有user、group相关的字段配置!
user = www-datagroup = www-data
执行/usr/local/bin/php-fpm时,报错:failed to load configuration file ‘/usr/local/etc/php-fpm.conf’
按照报错提示找到php-fpm.conf的125行:“include=NONE/etc/php-fpm.d/*.conf”。
本文件是主配置文件,除了主配置文件之外,还可以加载其他配置文件,所以这句话含义是指定其他引入的配置文件位置。
那就可以去掉路径中的NONE/(注意/符号也要去掉,否则就不是相对路径,变成绝对路径了),即读取/usr/local/etc/php-fpm.d/路径下的*.conf文件。
然后去/usr/local/etc/php-fpm.d/下面找,看到底有没有conf文件,发现有一个www.conf.default文件,将其重命名为www.conf,打开后发现user、group是在这里配置!按照官网指导,将user、group改为www-data。
此时如果尝试启动php-fpm会报错:ERROR: [pool www] cannot get uid for user ‘www-data’。
原因是当前Linux系统中并没有www-data的用户和用户组,所以新建用户和用户组:
groupadd www-datauseradd -g www-data www-data
此时执行/usr/local/bin/php-fpm,启动php-fpm没有任何报错,执行ps -ef | grep php命令可以看到php-fpm已经运行
注意这里的用户:
php-fpm分为主进程和子进程,由于本次是在root用户下执行的/usr/local/bin/php-fpm,所以master进程用户为root。
由于之前在/usr/local/etc/php-fpm.d/www.conf配置文件中配置了子进程的user和group为www-data,所以子进程的用户为www-data。
- 全新Linux服务器安装Nginx&PHP&MySQL环境
- Linux+Nginx+Mysql+PHP服务器运行环境安装
- linux 源码包安装LNMP(linux+nginx+mysql+php)服务器环境
- Centos7服务器安装nginx,mysql,php环境教程
- 搭建LNMP(linux+nginx+mysql+php)服务器环境配置实例教程
- LNMP(linux+nginx+mysql+php)服务器环境配置
- LNMP(linux+nginx+mysql+php)服务器环境配置
- LNMP(linux+nginx+mysql+php)服务器环境配置
- LNMP服务器环境配置 (linux+nginx+mysql+php)
- LNMP(linux+nginx+mysql+php)服务器环境配置
- LNMP(linux+nginx+mysql+php)服务器环境配置
- LNMP(linux+nginx+mysql+php)服务器环境配置
- LNMP(linux+nginx+mysql+php)服务器环境配置
- LNMP(linux+nginx+mysql+php)服务器环境配置
- LNMP(linux+nginx+mysql+php)服务器环境配置
- LNMP(linux+nginx+mysql+php)服务器环境配置
- LNMP(linux+nginx+mysql+php)服务器环境配置
- LNMP(linux+nginx+mysql+php)服务器环境配置
- Kaggle项目:Kobe Bryant Shot Selection(科比投篮选择)
- 排序算法
- struts 实现ajax校验用户名是否存在
- 5G超密集组网驱动光模块市场爆发
- opencv模板匹配笔记----C++练手项目
- 全新Linux服务器安装Nginx&PHP&MySQL环境
- 分布式消息队列RocketMQ&Kafka -- 消息的“顺序消费”
- 问题链接积累
- 一个错误
- This application failed to start because it could not find or load the Qt platform plugin "windows"
- 轻松让你彻底搞定c++版 线索二叉树的线索化算法
- Volley使用JsonObjectRequest发送Post请求失败
- 在linux 下ping不通windows
- c++ 输入一个链表,从尾到头打印链表每个节点的值。