php编译安装及phpize使用

简介:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
我的博客已迁移到xdoujiang.com请去那边和我交流
一、基础环境
1、版本
cat  /etc/debian_version 
5.0.10
 
2、内核
uname  -r
2.6.26-2-amd64
 
3、安装包
php-5.4.22. tar .bz2
 
4、ip(eth0)
10.1.10.160
 
5、php官网
http: //www .php.net /downloads .php
 
6、安装基础包
apt-get -y  install  bzip2  gcc  make  libxml2-dev autoconf libtool automake
 
7、安装apxs命令
1)apt-get -y  install  apache2-prefork-dev
2)说明
apxs是一个为ApacheHTTP服务器编译和安装扩展模块的工具,用于编译一个或多个源程序或目标代码文件为动态共享对象,使之可以用由mod_so提供的LoadModule 指令在运行时加载到Apache服务器中。
 
8、安装apache2(prefork模式)
apt-get -y  install  apache2-mpm-prefork
 
二、安装php
1、下载php包 
axel -n 10 http: //mirrors .sohu.com /php/php-5 .4.22. tar .bz2
 
2、创建目录
mkdir  /opt/php  -p
 
3、解压并进入目录
tar  jxvf php-5.4.22. tar .bz2 -C  /opt/php  &&  cd  /opt/php/php-5 .4.22
 
4、编译三步曲
1). /configure  --with-apxs2= /usr/bin/apxs2  --prefix= /opt/php/
2) make  &&  make  install
3)参数说明
--with-apxs2 整合apache,apxs功能是使用mod_so中的LoadModule指令,加载指定模块到apache,要求apache要打开so模块
--prefix     安装路径
4)编译出错解决方法
make  install
Installing PHP SAPI module:       apache2handler
/usr/share/apache2/build/instdso .sh SH_LIBTOOL= '/usr/share/apr-1.0/build/libtool'  libphp5.la  /usr/lib/apache2/modules
/usr/share/apr-1 .0 /build/libtool  --mode= install  cp  libphp5.la  /usr/lib/apache2/modules/
cp  .libs /libphp5 .so  /usr/lib/apache2/modules/libphp5 .so
cp  .libs /libphp5 .lai  /usr/lib/apache2/modules/libphp5 .la
libtool:  install : warning: remember to run libtool --finish  /opt/php/php-5 .4.22 /libs
chmod  644  /usr/lib/apache2/modules/libphp5 .so
apxs:Error: Activation failed  for  custom  /etc/apache2/httpd .conf  file ..
apxs:Error: At least one LoadModule directive already has to exist..
make : *** [ install -sapi] Error 1
5)在httpd.conf配置中添加2行
cat  /etc/apache2/httpd .conf 
#LoadModule directive to aid module installations 
#LoadModule dummy_module /usr/lib/apache2/modules/mod_dummy.so
 
5、再次编译
make  clean
make  &&  make  install
 
6、创建软链接
ln  -s  /opt/php/bin/ /usr/bin/
 
7、再次查看apache2配置文件里已经有php的模块已经添加好了
cat  /etc/apache2/httpd .conf
#LoadModule directive to aid module installations 
#LoadModule dummy_module /usr/lib/apache2/modules/mod_dummy.so
LoadModule php5_module         /usr/lib/apache2/modules/libphp5 .so
 
8、添加虚拟主机
1)复制一份模板
cd  /etc/apache2/sites-available  &&  cp  default aaa.bbb.com
2)域名aaa.bbb.com
cat  aaa.bbb.com
<VirtualHost 10.1.10.160:80>
ServerAdmin webmaster@localhost
ServerName aaa.bbb.com
DocumentRoot  /var/www/aaa .bbb.com
<Directory  /var/www/aaa .bbb.com/>
Options -Indexes FollowSymLinks +Execcgi
AllowOverride All
Order allow,deny
allow from all
< /Directory >
ErrorLog  /var/log/apache2/aaa .bbb.com_error.log
LogLevel warn
CustomLog  /var/log/apache2/aaa .bbb.com_access.log combined
< /VirtualHost >
 
9、启用虚拟主机
a2ensite aaa.bbb.com
Enabling site aaa.bbb.com.
Run  '/etc/init.d/apache2 reload'  to activate new configuration!
 
10、创建网站目录并修改权限
cd  /var/www/  &&  mkdir  aaa.bbb.com -p &&  chown  www-data.www-data aaa.bbb.com/ -R
 
11、重启apache2服务
/etc/init .d /apache2  restart
 
12、测试php是否成功安装 并使用绑定域名来测试下
cat  /var/www/aaa .bbb.com /index .php
<?php
phpinfo();
?>;
 
13、效果

wKiom1W0R3WDYgyCAAVRdD77WgE290.jpg

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
三、使用phpize命令给php动态添加扩展(bcmath)
1、查看当前php已加载的有效模块
php -m
[PHP Modules]
Core
ctype
date
dom
ereg
fileinfo
filter
hash
iconv
json
libxml
pcre
PDO
pdo_sqlite
Phar
posix
Reflection
session
SimpleXML
SPL
sqlite3
standard
tokenizer
xml
xmlreader
xmlwriter
[Zend Modules]
2)参数
-m Show compiled  in  modules(会显示当前php加载的有效模块)
 
2、进入bcmath目录
cd  /opt/php/php-5 .4.22 /ext/bcmath
 
3、执行phpize命令
phpize 
Configuring  for :
PHP Api Version:         20100412
Zend Module Api No:      20100525
Zend Extension Api No:   220100525
 
4、 make  &&  make  install
Installing shared extensions:      /opt/php/lib/php/extensions/no-debug-non-zts-20100525/
 
5、查看到bcmath.so位置
ll  /opt/php/lib/php/extensions/no-debug-non-zts-20100525/
-rwxr-xr-x 1 root root 383696 2015-07-24 14:51 bcmath.so
 
6、将源码包里的php.ini-production复制到php配置目录
1)查看下php配置目录

wKiom1W0R6Cif4FrAABG9BXQnOQ309.jpg

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
2)复制模板php.ini-production并改名为php.ini
cp  /opt/php/php-5 .4.22 /php .ini-production  /opt/php/lib/php .ini
 
7、在 cat  /opt/php/lib/php .ini配置里添加以下内容到最后
extension =  /opt/php/lib/php/extensions/no-debug-non-zts-20100525/bcmath .so
 
8、重启apache2
/etc/init .d /apache2  restart
 
9、看到bcmath已经加载OK了
php -m
[PHP Modules]
bcmath
Core
ctype
date
dom
ereg
fileinfo
filter
hash
iconv
json
libxml
pcre
PDO
pdo_sqlite
Phar
posix
Reflection
session
SimpleXML
SPL
sqlite3
standard
tokenizer
xml
xmlreader
xmlwriter
[Zend Modules]









本文转自 xdoujiang 51CTO博客,原文链接:http://blog.51cto.com/7938217/1678415,如需转载请自行联系原作者
目录
相关文章
|
4月前
|
Linux 应用服务中间件 PHP
Linux下搭建PHP环境-源码编译安装PHP7.2
Linux下搭建PHP环境-源码编译安装PHP7.2
148 0
|
7月前
|
关系型数据库 MySQL Linux
百度搜索:蓝易云【Centos8 stream系统编译安装PHP教程。】
以上是在CentOS 8 Stream系统上编译安装PHP的基本教程。请注意,具体的配置和参数可能因您的需求而有所不同,您可以根据自己的情况进行调整。同时,请确保在执行任何操作之前备份重要的文件和配置。
224 0
|
4月前
|
小程序 JavaScript Shell
centos编译安装PHP(2)
Php编译安装成功之后,是没有php.ini文件的,需要我们从源码包中复制过去。
45 1
|
4月前
|
前端开发 JavaScript Shell
centos编译安装PHP(1)
当然,我是直接在服务器上下载的: bash 复制代码
72 1
|
7月前
|
Ubuntu PHP Apache
百度搜索:蓝易云【Ubuntu 18.04系统编译安装PHP教程。】
现在,您已经成功地在Ubuntu 18.04上编译和安装了PHP 7.4,并将其与Apache集成。请注意,这只是基本的安装过程,您可能需要根据自己的需求进一步配置和调整PHP。确保在实际操作中根据您的需求进行适当的配置和保护。
203 0
|
7月前
|
Ubuntu 应用服务中间件 PHP
百度搜索:蓝易云【Ubuntu 20.04系统编译安装PHP教程。】
请注意,以上是一个基本的编译安装PHP的示例,您可能需要根据您的特定需求进行进一步配置和调整。
81 0
|
7月前
|
PHP
百度搜索:蓝易云【Debian11系统编译安装PHP教程。】
在Web浏览器中访问该文件,如果看到PHP信息页面,则表示安装成功。 以上是在Debian 11系统上编译安装PHP的基本步骤。请根据实际情况进行相应的调整和配置。
57 0
|
7月前
|
Linux PHP
百度搜索:蓝易云【Cnetos7编译安装PHP教程。】
请注意,上述步骤提供了基本的编译安装PHP的指南,具体的过程可能会因您选择的PHP版本和特定需求而有所不同。
64 0
|
8月前
|
PHP
php 7.4 编译安装
php 7.4 编译安装
165 0
|
Unix Linux 应用服务中间件
PHP:CentOS Linux环境下源码编译安装PHP8.0
PHP:CentOS Linux环境下源码编译安装PHP8.0
571 0