Linux上全源码安装Apache、MySQL、PHP、WSF安装(转载)

Linux上全源码安装Apache、MySQL、PHP、WSF安装

博客分类:PHP

PHPMySQLApacheLinuxSQLite

Linux上全源码安装Apache、MySQL、PHP、WSF安装(原创)

需要root权限

Apache安装

下载

#wgethttp://apache.mirror.phpchina.com/httpd/httpd-2.2.6.tar.gz

安装

#tarzxvfhttpd-2.2.6.tar.gz

#cdhttpd-2.2.6

#./configure--prefix=/usr/local/apache2--enable-so

#make

#makeinstall

#makeclean

系统启动时自动加载Apache

#cp/usr/local/apache2/bin/apachectl/etc/rc.d/init.d/httpd

#cd/etc/rc.d/rc3.d

#ln–s../init.d/httpdS80httpd

MySQL安装

下载

#wgethttp://mysql.ntu.edu.tw/Downloads/MySQL-5.0/mysql-5.0.45.tar.gz

安装

#tarzxvfmysql-5.0.45.tar.gz

#cdmysql-5.0.45

#./configure--prefix=/usr/local/mysql--enable-thread-safe-client--with-charset=utf8

#make

#makeinstall

#cpsupport-files/my-medium.cnf/etc/my.cnf

#makeclean

创建mysql用户

#groupaddmysql

#useradd-gmysqlmysql

设置目录访问权限

#cd/usr/local/mysql

#chown-Rmysql.

#chgrp-Rmysql.

#bin/mysql_install_db--user=mysql(初始化表)

#chown-Rroot.

#chown-Rmysqlvar

运行

#/usr/local/mysql/bin/mysqld_safe--user=mysql

LibXML2安装(Linux默认已经存在)

下载

#wgetftp://xmlsoft.org/libxml2/libxml2-2.6.30.tar.gz

安装

#tarzxvflibxml2-2.6.30.tar.gz

#cdlibxml2-2.6.30

#./configure--prefix=/usr/local/libxml2--exec-prefix=/usr

#make

#makeinstall

#makeclean

Zlib安装

下载

#wgethttp://www.zlib.net/zlib-1.2.3.tar.gz

安装

#tarzxvfzlib-1.2.3.tar.gz

#cdzlib-1.2.3

#./configure--prefix=/usr/local/zlib--exec-prefix=/usr

#make

#makeinstall

#makeclean

LibIconv安装

下载

#wgethttp://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.12.tar.gz

安装

#tarzxvflibiconv-1.12.tar.gz

#cdlibiconv-1.12

#./configure--prefix=/usr/local/libiconv

#make

#makeinstall

#makeclean

PHP安装

下载

#wgethttp://cn2.php.net/distributions/php-5.2.5.tar.gz

安装(先安装libiconv-1.14.tar.gz)

#tarzxvfphp-5.2.5.tar.gz

#cdphp-5.2.5

#./configure--prefix=/usr/local/php--with-apxs2=/usr/local/apache2/bin/apxs--with-mysql=/usr/local/mysql--with-zlib--with-iconv=/usr/local/libiconv--with-config-file-path=/home/admin/aep/forum/conf

#make

#makeinstall

#makeclean

#cpphp.ini-dist/home/admin/aep/forum/conf/php.ini

#vi/home/admin/aep/forum/conf/httpd.conf

任意位置添加如下内容

AddTypeapplication/x-httpd-php.php

AddTypeapplication/x-httpd-php-source.phps

pkg-config安装(如果低于0.20版本)

下载

#wgethttp://pkgconfig.freedesktop.org/releases/pkg-config-0.22.tar.gz

安装

#tarzxvfpkg-config-0.22.tar.gz

#cdpkg-config-0.22

#./configure--prefix=/usr

#make

#makeinstall

#makeclean

SQLite安装

下载

#wgethttp://www.sqlite.org/sqlite-3.5.3.tar.gz

安装

#tarzxvfsqlite-3.5.3.tar.gz

#cdsqlite-3.5.3

#./configure--prefix=/usr--disable-tcl

#make

#makeinstall

#makeclean

OpenSSL安装(可选)

下载

#wgethttp://www.openssl.org/source/openssl-0.9.8b.tar.gz

安装

#tarzxvfopenssl-0.9.8b.tar.gz

#cdopenssl-0.9.8b

#./config--prefix=/usr/--openssldir=/usr/local/openssl

#make

#makeinstall

#makeclean

WSF安装

下载

#wgethttp://dist.wso2.org/products/wsf/php/wso2-wsf-php-src-1.1.0.tar.gz

安装

#tarzxvfwso2-wsf-php-src-1.1.0.tar.gz

#cdwso2-wsf-php-src-1.1.0

#./configure--with-apache2=/usr/local/apache2/include--with-wsf--enable-savan=no--with-php-config=/usr/local/php/bin/php-config

#make

#makeinstall

#makeclean

默认情况下,WSF被安装在/wsf_c,wsf.so被编译到/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/

#vi/home/admin/aep/forum/conf/php.ini

找到extension_dir="./",改为extension_dir="/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/"

在php.ini任意位置添加

[wsf]

wsf.home=/wsf_c

wsf.log_path=/wsf_c/logs

wsf.log_level=3

wsf.rm_db_dir=/wsf_c

extension=wsf.so

测试

重启Apache

#/usr/local/php/bin/php-m

看wsf模块是否在列表中

PHPws-security代码样例(WS安全带签名)

Python代码

<spanstyle="font-size:x-small;"><spanstyle="font-size:small;">$reqPayloadString=<<<XML

<xsd:getAppByAppId

xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns:xs="http://www.w3.org/2001/XMLSchema"

xmlns:xsd="http://subsc.api.core.aep.alisoft.com">

<xsd:param0>$appid</xsd:param0>

</xsd:getAppByAppId>

XML;

$my_cert=ws_get_cert_from_file("./keys/aepforum_cert.cert");

$my_key=ws_get_key_from_file("./keys/aepforum_key.pem");

$rec_cert=ws_get_cert_from_file("./keys/aep_cert.cert");

$reqMessage=newWSMessage($reqPayloadString,array(

"to"=>"http://api.alisoft.com:1688/webservice/AppWebService",

"action"=>"http://subsc.api.core.aep.alisoft.com/getAppByAppId"

));

$sec_array=array(

"sign"=>TRUE,

"securityTokenReference"=>"IssuerSerial",

"algorithmSuite"=>"Basic256Rsa15"

);

$policy=newWSPolicy(array(

"security"=>$sec_array

));

$sec_token=newWSSecurityToken(array(

"privateKey"=>$my_key,

"certificate"=>$my_cert,

"receiverCertificate"=>$rec_cert

));

$client=newWSClient(array(

"useWSA"=>TRUE,

"policy"=>$policy,

"securityToken"=>$sec_token

));

$resMessage=$client->request($reqMessage);

$xml=newSimpleXMLElement($resMessage->str);

$name=$xml->return[0]->appName;

$username=$xml->return[0]->isvPassPort;

$description=$xml->return[0]->description;</span></span>

相关推荐