zoukankan      html  css  js  c++  java
  • Linux安装Axis C构建WebService服务

    在安装Axis C++之前有两个组件是必须安装的,各自是Apache HTTP Server以及用于处理XML的程序Xerces;为了编译Axis以及Apache HTTPD,你的Linux机器还应该装有gcc编译器。

    3个部件的都採用源代码安装,它们都有类似的步骤:

    1. 上传并解压安装包
    2. 环境变量设置
    3. 利用configure生成Makefile
    4. 编译安装到usr/local/相应文件夹下

    本文部署路径为apache安装在/usr/local/apache2,Axis2C 1.6 安装到/usr/local/axis2c,Xerces 3.0.1安装到/usr/local/,Xerces 3.0.1以头文件和库文件分别分别在/usr/local/include/usr/local/lib

    提示:安装过程中假设出错,要注意检查设置环境变量是否正确以及是否生效。假设执行./configure出错。请检查安装的工具链如gcc,libtool等是否符合版本号要求。怎样make install出错。请确定当前用户是否有对应的安装权限。

    推荐安装方式:统一使用root用户安装,之后再将权限授予相应的用户。本文也採用这样的方式进行。

    一、安装前准备

    1. 确认登陆root用户
      su - root

    二、Linux主机源代码安装Apache

    1.上传并解压安装包
    http://httpd.apache.org/下载源码httpd-2.2.27.tar.gz(或其它版本号),上传到linux主机.
    解压源代码包
    tar -zxvf httpd-2.2.27.tar.gz
    这时会出现一个httpd-2.2.27的文件夹,将它改名为apache
    mv httpd-2.2.27 apache

    2.环境变量设置

    3.利用configure生成Makefile
    进入apache文件夹下
    cd apache
    设置安装參数
    ./configure --prefix=/usr/local/apache2 --enable-module=so
    第一个參数prefix为安装的路径,第二个參数enable-module=so表示同意动态载入模块。
    prefix參数指明将apache安装到/usr/local/apache2文件夹,假设登录用户不是root,可能没有权限在/usr/local下创建文件夹的权限。这样在make install时会报错误。解决的办法有两个

    • 改动prefix參数,使之指向一个登录用户有创建文件夹权限的路径
    • root用户在/usr/local文件夹下创建apache2文件夹,然后将文件夹apache2wrx权限授权给登录用户。
      当然我们使用另外一种方式,使用root用户安装。

    4.编译安装到相应文件夹下
    make
    make install

    总之。安装顺序运行的命令序列例如以下。假设都没有出错,表示成功安装:
    tar -zxvf httpd-2.2.6.tar.gz
    mv httpd-2.2.6 apache
    cd apache
    ./configure --prefix=/usr/local/apache2 --enable-module=so
    make
    make install #可能须要root权限

    接下来Xerces 3.0.1和Axis2C 1.6 的安装都是类似的步骤.

    三、Xerces 3.0.1源代码安装

    1.上传并解压安装包
    http://archive.apache.org/dist/xml/xerces-c/下载源代码,上传的Linux主机。
    解压包
    tar -zxvf xerces-c-3.0.0.tar.gz

    2.环境变量设置
    加入环境变量,vi .bashrc,在文件最后加入例如以下一行
    export XERCESCROOT=$HOME/xerces-c-3.0.1
    export LIBPATH=$HOME/xerces-c-3.0.1:$LIBPATH
    又一次引用环境变量: . .bashrc
    注意$HOME/xerces-c-3.0.1是我们解压文件的路径。
    3.利用configure生成Makefile
    进入源码文件夹
    cd $XERCESCROOT/
    执行脚本生成makefile文件:
    autoconf
    ./reconf #注意这一步
    ./configure --prefix=/usr/local

    4.编译安装到相应文件夹下
    make
    make install #可能须要root权限

    四、Axis2C 1.6 源代码安装

    1.上传并解压安装包
    下载安装包http://axis.apache.org/axis2/c/core/download.cgi,并上传到linux主机。
    解压包
    tar -zxvf axis2c-src-1.6.0

    2.环境变量设置
    vi ~/.bashrc,在文件最后加入例如以下一行
    export AXIS2_HOME=$HOME/axis2c-src-1.6.0
    export AXIS2C_HOME=/usr/local/axis2c/
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${AXIS2C_HOME}/lib/
    export PATH=$PATH:${AXIS2C_HOME}/bin/tools/wsdl2c/
    又一次引用环境变量: . .bashrc

    3.利用configure生成Makefile
    进入文件夹
    cd axis2c-src-1.6.0
    执行脚本生成makefile文件:
    autoconf
    ./configure

    4.编译安装到相应文件夹下
    make
    make install #可能须要root权限

    5.启动验证:
    首先启动httpd服务,执行命令apachectl start
    进入/usr/local/axis2c/bin文件夹,启动sudo ./axis2_http_server
    在浏览器中输入http://ip:9090/axis/services,ip为server的ip地址。假设訪问成功。则说明启动成功,否则回头检查以上3个部件的安装是否成功.


    五、启动配置说明

    5.1 axis2c账务接口启停配置

    1. 加入环境变量
      export AXIS2C_CONF=/usr/local/axis2c/service/BillingService/webservice.conf
      AXIS2C_CONF为配置文件的全路径文件名称
      又一次引用环境变量: . .bashrc
    2. 加入你的应用的接口文件WebSimple
      接口文件会以一个文件夹WebSimple的上传,将其拷贝到/usr/local/axis2c/services/文件夹下,文件结构例如以下:
      |--/usr/local/axis2c/services/
      |------WebSimple/
      |----------service.xml
      |----------WebSimple.wsdl
      |----------libWebSimple.so
      |----------webservice.conf
      当中WebSimple.wsdl是webservice的接口定义文件,service.xml为相应的xml文件。libWebSimple.so为动态库,webservice.conf为配置文件。


      自此,安装的步骤已经基本完毕。可是程序的启停还仅仅能用root用户进行。我们还须要将权限授予合适的用户。

    3. 改动 apache httpd配置
      apache主要文件夹和文件说明
      主配置文件位置/usr/local/apache2/conf/httpd.conf或者/etc/httpd/conf/*
      日志文件/usr/local/apache2/logs
      配置文件httpd.conf部分參数说明
      ServerRoot "/usr/local/apache2" server文件位置
      Listen 80 或者Port 80 在standlone方式下监听的port号
      User daemon 进程执行的属主
      Group daemon 进程执行的属组
      ServerAdmin you@example.com 管理员信箱(能够改动为自己的邮箱)
      ServerName www.example.com:8000 server指定名称和port号,名称也能够是ip地址
      DocumentRoot "/usr/local/apache2/htdocs" 文档服务的根文件夹
      ScriptAlias /cgi-bin/ "/usr/local/apache2/cgi-bin/" 为一个文件夹建立别名
      不同版本号的apache。在文件夹和參数名字上有微小的差异,依据名字一般都能猜出来。如有须要,请依据详细情况改动配置内容。

    4. 加入一个apache用户。用来管理程序的启停
      adduser apache #(加入apache用户,按提示进行。password设置为apache)
      将文件路径/usr/local/axis2c和/usr/local/apache2的属主更改为apache
      chown -R apache /usr/local/axis2c/
      chown -R apache /usr/local/apache2/
      这里,我们使用的是apache用户,你也能够不使用apache用户。换成你想要的用户就可以。

    5. 启动
      进入/usr/local/axis2c/bin文件夹,启动axis2服务程序./axis2_http_server

      假设准备使用后台启动的话,能够使用nohup ./axis2_http_server &.
      验证:在浏览器中输入http://ip:9090/axis/services/WebSimple?

      wsdl,ip为该server的ip地址。假设訪问成功,会返回一个xml文件。


      提示:假设启动axis2_http_server程序失败,可能是当前用户没有权限。须要切换到用权限的用户来启动,如:su - apache

    6. 停止
      假设是直接启动axis2_http_server的话,按下ctrl+c就可以终止程序。

      后台启动的话能够用kill来终止服务。


    欢迎光临我的站点----蝴蝶忽然的博客园----人既无名的专栏


    假设阅读本文过程中有不论什么问题,请联系作者,转载请注明出处!

  • 相关阅读:
    erlang 大神
    Mysql5.7全新的root密码规则
    单机多实例
    mysql 5.7源码安装
    MySQL审计功能
    MySQL升5.6引发的问题
    一千行MySQL学习笔记
    MySQL5.6新特性之GTID、多线程复制
    正确修改MySQL最大连接数的三种好用方案
    MYSQL 慢日志
  • 原文地址:https://www.cnblogs.com/zhchoutai/p/6971825.html
Copyright © 2011-2022 走看看