完整实验步骤:
1.apache安装
2.php安装
3.连接达梦数据库
1.源码安装apache
apache的源码安装包:
httpd-2.4.43.tar.gz
安装apache源码包需要先安装apr和apr-util
apr-1.6.5.tar.bz2
apr-util-1.6.1.tar.bz2
1.1安装apr
tar -jxf apr-1.6.5.tar.bz2
cd apr-1.6.5
./configure --prefix=/usr/local/apr
make && make install
1.2安装apr-util
tar -jxf apr-util-1.6.1.tar.bz2
cd apr-util-1.6.1
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make && make install
如果出现如下报错:
则需要yum安装:
yum install -y expat-devel*
再执行
make && make install
1.3安装apache
tar -zxf httpd-2.4.43.tar.gz
cd httpd-2.4.43
./configure --prefix=/usr/local/apache --enable-so --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-included-apr
make && make install
configure报错:
需要安装pcre-devel
yum install pcre-devel -y
make报错:
https://www.cndba.cn/xisuo/article/4385
需要拷贝apr和apr-util解压后的目录到srclib下
[root@dm7 httpd-2.4.43]# cp -r ../apr-1.6.5 srclib/apr
[root@dm7 httpd-2.4.43]# cp -r ../apr-util-1.6.1 srclib/apr-util
重新执行configure和make
2.源码安装php
tar -zxf php-7.2.30.tar.gz
cd php-7.2.30
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-pdo-mysql --enable-fpm
make && make install
其中的—with-apxs2是指定apache的apxs路径,此参数控制安装php时把libphp7.so安装到apache的modules目录下。
—with-pdo-mysql则是安装pdo模块
https://www.cndba.cn/xisuo/article/4385
configure时报错:
https://www.cndba.cn/xisuo/article/4385
需要yum安装libxml2-devel
yum install libxml2-devel -y
3.连接达梦数据库
3.1修改用户环境变量:
达梦数据安装目录是/d07/dmdbms
vi .bash_profile
PATH=$PATH:$HOME/bin:/d07/dmdbms/bin:/usr/local/php/bin:/usr/local/apache/bin
export PATH
export LD_LIBRARY_PATH=/d07/dmdbms/bin
使环境变量生效:
source .bash_profile
3.2配置php.ini
查看php版本:
[root@dm7 ~]# php -v
PHP 7.2.30 (cli) (built: May 6 2020 19:13:32) ( ZTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
[root@dm7 ~]#
cd /usr/local/php/lib/https://www.cndba.cn/xisuo/article/4385
https://www.cndba.cn/xisuo/article/4385
复制php解压路径下的php.ini文件到当前路径
cp ~/php-7.2.30/php.ini-development ./php.ini
编辑php.ini文件,添加达梦的so文件(添加3条记录):https://www.cndba.cn/xisuo/article/4385
extension_dir="/d07/dmdbms/drivers/php_pdo"
extension=libphp72ts_dm.so
extension=php72ts_pdo_dm.so
注意so文件与php版本要一致(zts的使用libphp72ts_dm.so,nts的使用libphp72_dm.so)
检查导入模块是否正常:
php -m
https://www.cndba.cn/xisuo/article/4385
3.3配置apache
修改httpd.conf文件的
模块中添加内容:(解决apache无法解析php的问题)
AddType application/x-httpd-php .php
修改:
#ServerName www.example.com:80
去掉#改为:
ServerName localhost:80
3.4启动apache测试
apachectl start
打开网页:
启动正常。
3.5测试php
cd /usr/local/apache/htdocs
新建文件vi phpinfo.php
添加内容
打开网页:
3.6连接达梦数据库测试
cd /usr/local/apache/htdocs
https://www.cndba.cn/xisuo/article/4385
https://www.cndba.cn/xisuo/article/4385
添加内容:
/p>
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<?php/* 连接选择数据库 */
$link = dm_connect("192.168.56.97", "SYSDBA", "SYSDBA")
or die("Could not connect : " . dm_error());
print "连接成功";
/* 执行 SQL 查询 */
$query = " select * from test";
$result = dm_exec($link,$query) or die("Query failed : " . dm_error());
/* 在 HTML 中打印结果 */
print "
while ($line = dm_fetch_array($result)) {
print "/t
/n";foreach ($line as $col_value) {
print "/t/t
$col_value/n";}
print "/t
/n";}
print "
/n";/*插入*/
$a = 1;
$b = 'yyy';
$stmt = dm_prepare($link, 'insert into test values(?,?)');
$result = dm_execute($stmt,array($a,$b));
print "插入成功:";
$query = " select * from test";
$result = dm_exec($link,$query) or die("Query failed : " . dm_error());
/* 在 HTML 中打印结果 */
print "
while ($line = dm_fetch_array($result)) {
print "/t
/n";foreach ($line as $col_value) {
print "/t/t
$col_value/n";}
print "/t
/n";}
print "
/n";/* 释放资源 */
dm_free_result($result);
/* 断开连接 */
dm_close($link);
?>
打开页面:
版权声明:本文为博主原创文章,未经博主允许不得转载。
达梦数据库 PHP