在CentOS下安装nginx+php环境

一、nginx 安装

1. 在nginx官网下载nginx源码
提供一个nginx官网下载地址:
http://nginx.org/download/nginx-1.12.2.tar.gz


注意:请先确认 是否已经安装过 pcre pcre-devel openssl openssl-devel zlib zlib-devel


如果没有,请先安装这些依赖文件
sudo yum install pcre pcre-devel openssl openssl-devel zlib zlib-devel

./configure --prefix=/usr/local/nginx
sudo make && make install

创建www-data用户
useradd -s /sbin/nologin -M www-data
配置文件
sudo vim /usr/local/nginx/conf/nginx.conf

location / {

  root web根目录;

  index index.html index.htm index.php;

}

location ~ \.php$ {

  root html;

  fastcgi_pass 127.0.0.1:9000;

  fastcgi_index index.php;

  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;#$document_root?=web根目录

  include fastcgi_params;

}

注意:web根目录 /develop/nginx/html/

启动nginx
nginx/sbin/nginx -s reload //平滑重启nginx
nginx/sbin/nginx -c /nginx.conf //启动
nginx/sbin/nginx -t //检查配置文件是否正确
kill -QUIT nginx的pid //从容关闭nginx

二、php-fpm安装

需要先安装依赖 libxml2

yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel libicu-devel

php7.2.16下载地址
https://www.php.net/distributions/php-7.2.16.tar.gz

--enable-maintainer-zts //关闭线程安全的使用,通常都不需要线程安全

在php官网下载php源码,解压 开始安装
./configure --prefix=/usr/local/php72 --with-mysqli=shared,mysqlnd --enable-fpm --enable-opcache --enable-bcmath --enable-calendar --enable-intl --enable-mbstring --enable-pcntl --enable-soap --enable-sockets --enable-zip --with-pdo-mysql=mysqlnd --with-curl

开启所有基础扩展
./configure \
--prefix=/usr/local/php \
--with-mhash \
--with-openssl \
--with-config-file-path=/usr/local/php/etc \
--enable-fpm \
--with-fpm-user=php-fpm \
--with-fpm-group=php-fpm \
--enable-bcmath \
--enable-calendar \
--enable-intl \
--enable-mbstring \
--enable-pcntl \
--enable-soap \
--enable-sockets \
--enable-zip \
--enable-mysqlnd \
--enable-mysqlnd-compression-support \
--with-mysqli=shared,mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-pdo-pgsql=
--enable-ftp \
--with-curl \
--with-xsl \
--with-iconv \
--with-zlib \
--with-xmlrpc \
--with-gettext \
--enable-opcache \


./configure --prefix=/usr/local/php56 --with-mysqli=shared,mysqlnd --enable-fpm --enable-maintainer-zts

sudo make && make install

 

解释:

--enable-maintainer-zts 表示安装的线程安全版
--enable-opcache 开启opcache

提供一个php5.5.38官网下载地址
http://cn2.php.net/get/php-5.5.38.tar.gz/from/this/mirror

提供一个php-5.6.34下载地址
http://php.net/get/php-5.6.38.tar.gz/from/this/mirror //更快
http://cn2.php.net/get/php-5.6.38.tar.gz/from/this/mirror
https://www.php.net/distributions/php-5.6.38.tar.gz


复制安装目录下 php.ini-develop 到 安装目录 php/lib/php.ini
配置php-fpm
/php7/etc
sudo mv /php7/etc/php-fpm.conf.default /php7/etc/php-fpm.conf
sudo vim php-fpm.conf
;pid = run/php-fpm.pid 去掉前面的 ;
sudo mv /etc/php-fpm.d/www.conf.default /etc/php-fpm.d/www.conf
sudo vim www.conf
user = www-data
group = www-data

扩展目录的路径
/php5/lib/php/extensions/no-debug-zts-20121212/

//待确认
listen.owner = nobody
listen.group = nobody
listen.mode = 0660

启动php-fpm
/develop/php7/sbin/php-fpm
关闭php-fpm服务
ps -ef|grep php-fpm
找到 php-fpm master主进程
结束进程 sudo kill php-fpm的进程ID
sudo kill -TERM PID

原文地址:https://www.cnblogs.com/cnxzb/p/14385897.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


如何选择合适的 C++ Web 开发框架?
利用 C++ 框架构建高并发 Web 应用的策略
用 C++ 框架开发跨平台图形应用程序
golang框架中安全编码实践的最佳指南是什么?
golang框架与其他语言框架在设计理念上的区别有哪些?
C++ 图形框架与其他语言框架的比较
C++ 框架与其他 Web 开发框架的对比分析
使用 C++ 框架构建大型项目最佳实践
C++ 框架如何提高大型项目开发效率
C++ 框架中依赖注入的持续集成与部署工具
如何与社区协作和贡献到自定义 Golang 框架?
C++ 框架在大型项目中如何实现模块化开发
使用 C++ 框架开发跨平台 Web 应用
C++ 框架在大型项目中的优缺点
golang框架在性能上的优势体现在哪些方面?
C++ 框架在嵌入式系统内存优化中的优势
golang框架在人工智能与机器学习中的作用
如何扩展 Golang 框架以支持特定功能?
如何利用 Go Modules 和依赖项管理来自定义 Golang 框架?
Golang 框架中的性能优化技巧