centos 7 编译安装php,php编译安装
大家好,今天来为大家解答centos 7 编译安装php这个问题的一些问题点,包括php编译安装也一样很多人还不知道,因此呢,今天就来为大家分析分析,现在让我们一起来看看吧!如果解决了您的问题,还望您关注下本站哦,谢谢~
求大神指导Centos7 源码编译安装Nginx+PHP 配置动静分离
这个是我的服务的实际将配置Nginx实现动静分离,对php页面的请求转发给LAMP处理,而静态页面交给Nginx,以实现动静分离。客户请求静态数据给Nginx,Nginx直接应答客户端,当请求动态数据到Nginx时,Nginx让客户端去找LAMP,通过代理的方式,LAMP就和客户端连接了。分别配置动态分离和静态分离
(1)架设并调试后端LAMP架构,指定的域名,IP地址为xxxx,创建动态页面test.php。
(2)配置Nginx(xxxx)处理动态页面请求,并把域名改为 chaodiquan.com在server{};段中加入以下代码,检测语法后,重启Nginx
(3)客户端输入xxxx/test.php成功后动态分离就实现了,接下来再配置静态分离
(4)配置Nginx处理静态页面请求,在server{};中加入以下代码,检测语法后,重启Nginx
location~.*\.(gif|jpg|jpeg|bmp|swf)${#这段代码意思是任意网址以这5种格式为结尾就到Nginx根目录下的html文件夹寻找资源
root html;
expires 1d;#缓存一天}
(5)在nginx的html目录中,放入图片aa.jpg,然后在apache的动态测试页test.php中添加
<html>
<body>
<img src="aaaa/aa.jpg">
</body>
</html>
(6)客户端输入xxxx/test.php测试,由于test.php是动态页面,因此客户端会找到LAMP架构中的Apache,然后调取图片aa.jpg是静态数据,所以从Nginx提取,最后反馈给客户端。这个是
centos7安装php8,实现php7和php8同时运行
在 CentOS7系统上安装 PHP8,实现与原有 PHP7并存运行的过程,确保系统稳定与程序兼容性。安装步骤如下:
1.进入目录,下载 PHP8.1.25源码。
2.解压源码,准备编译环境。
3.进入解压目录,启动编译过程。
在配置过程中遇到错误,通过先执行特定命令解决,完成编译。
经过一系列配置,最终完成 PHP8的安装。
4.配置 PHP-FPM服务。
5.使用 systemctl启动 PHP-FPM服务,并修改服务文件为 php8-fpm。
创建 php8-fpm.service文件于目录/usr/lib/systemd/system/。
配置文件内容并保存,运行命令启动服务。
6.在 php-fpm.conf中进行其他相关配置。
在网站 vhost配置中,如 nginx配置中,基于两种方式监听:基于 unix socket或基于 tcp。
基于 unix socket通信方式,设置 listen=/dev/shm/php8-cgi.sock,配置 fastcgi_pass unix:/dev/shm/php8-cgi.sock,实现应用层内部通信,速度较快。
基于 tcp监听方式,设置 listen= 127.0.0.1:9008,配置 fastcgi_pass 127.0.0.1:9008,端口需与 nginx配置相匹配。
7.启动 php8-fpm服务,重新运行 nginx,实现通信。
8.添加快捷方式到/usr/bin中,生成别名为 php8的快捷方式,便于使用。
9.添加对两种监听方式的说明与对比:
unix socket监听方式:优点在于速度快、资源消耗少;缺点为稳定性较低,存在数据传输问题。适合在同一台机器上的 nginx和 php-fpm服务。
tcp监听方式:优点为能保证数据的正确性,适合跨服务器场景;缺点为性能不如 unix socket。
通过上述步骤,成功在 CentOS7上安装并配置 PHP8,实现了与 PHP7的并存运行,满足了不同场景下的使用需求。
Centos7如何安装PHP7最新版
方法一、简单安装(通过yum)
1.安装epel-release
rpm-ivh
2.安装PHP7的rpm源
rpm-Uvh
3.安装PHP7
yum install php70w
方法二、编译安装
1.下载php7
wget-O php7.tar.gz
2.解压php7
tar-xvf php7.tar.gz
3.进入php目录
cd php-7.0.4
4.安装依赖包
#直接复制下面一行(不包括本行)
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
5.编译配置(如果出现错误,基本都是上一步的依赖文件没有安装所致)
嫌麻烦的可以从这一步起参考PHP官方安装说明:
./configure\
--prefix=/usr/local/php\
--with-config-file-path=/etc\
--enable-fpm\
--with-fpm-user=nginx\
--with-fpm-group=nginx\
--enable-inline-optimization\
--disable-debug\
--disable-rpath\
--enable-shared\
--enable-soap\
--with-libxml-dir\
--with-xmlrpc\
--with-openssl\
--with-mcrypt\
--with-mhash\
--with-pcre-regex\
--with-sqlite3\
--with-zlib\
--enable-bcmath\
--with-iconv\
--with-bz2\
--enable-calendar\
--with-curl\
--with-cdb\
--enable-dom\
--enable-exif\
--enable-fileinfo\
--enable-filter\
--with-pcre-dir\
--enable-ftp\
--with-gd\
--with-openssl-dir\
--with-jpeg-dir\
--with-png-dir\
--with-zlib-dir\
--with-freetype-dir\
--enable-gd-native-ttf\
--enable-gd-jis-conv\
--with-gettext\
--with-gmp\
--with-mhash\
--enable-json\
--enable-mbstring\
--enable-mbregex\
--enable-mbregex-backtrack\
--with-libmbfl\
--with-onig\
--enable-pdo\
--with-mysqli=mysqlnd\
--with-pdo-mysql=mysqlnd\
--with-zlib-dir\
--with-pdo-sqlite\
--with-readline\
--enable-session\
--enable-shmop\
--enable-simplexml\
--enable-sockets\
--enable-sysvmsg\
--enable-sysvsem\
--enable-sysvshm\
--enable-wddx\
--with-libxml-dir\
--with-xsl\
--enable-zip\
--enable-mysqlnd-compression-support\
--with-pear\
--enable-opcache
6.正式安装
make make install
7.配置环境变量
vi/etc/profile
在末尾追加
PATH=$PATH:/usr/local/php/bin
export PATH
执行命令使得改动立即生效
source/etc/profile
8.配置php-fpm
cp php.ini-production/etc/php.ini
cp/usr/local/php/etc/php-fpm.conf.default/usr/local/php/etc/php-fpm.conf
cp/usr/local/php/etc/php-fpm.d/www.conf.default/usr/local/php/etc/php-fpm.d/www.conf
cp sapi/fpm/init.d.php-fpm/etc/init.d/php-fpm
chmod+x/etc/init.d/php-fpm
9.启动php-fpm
/etc/init.d/php-fpm start