Linux安裝Axis C構建WebService服務
在安裝Axis C++之前有兩個組件是必須安裝的,分別是Apache HTTP Server以及用於處理XML的程序Xerces;為了編譯Axis以及Apache HTTPD,你的Linux機器還應該裝有gcc編譯器。
3個部件的都采用源碼安裝,它們都有類似的步驟:
- 上傳並解壓安裝包
- 設置環境變量
- 利用configure生成Makefile
- 編譯安裝到
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用戶安裝,之後再將權限授予對應的用戶。本文也采用這種方式進行。
一、安裝前準備
- 確認登陸root用戶
su - root
二、Linux主機源碼安裝Apache
1.上傳並解壓安裝包
從https://httpd.apache.org/下載源代碼httpd-2.2.27.tar.gz(或其他版本),上傳到linux主機.
解壓源碼包 tar -zxvf httpd-2.2.27.tar.gz
這時會出現一個httpd-2.2.27
的目錄,將它改名為apachemv 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
目錄,然後將目錄apache2
的wrx
權限授權給登錄用戶。
當然我們使用第二種方式,使用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.上傳並解壓安裝包
在https://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.上傳並解壓安裝包
下載安裝包https://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
在瀏覽器中輸入https://ip:9090/axis/services
,ip為服務器的ip地址。如果訪問成功,則說明啟動成功,否則回頭檢查以上3個部件的安裝是否成功.
五、啟動配置說明
5.1 axis2c賬務接口啟停配置
- 添加環境變量
export AXIS2C_CONF=/usr/local/axis2c/service/BillingService/webservice.conf
AXIS2C_CONF
為配置文件的全路徑文件名
重新引用環境變量:. .bashrc
-
添加你的應用的接口文件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用戶進行。我們還需要將權限授予合適的用戶。 -
修改 apache httpd配置
apache主要目錄和文件說明
主配置文件位置/usr/local/apache2/conf/httpd.conf
或者/etc/httpd/conf/*
日誌文件/usr/local/apache2/logs
配置文件httpd.conf部分參數說明ServerRoot "/usr/local/apache2"
服務器文件位置Listen 80
或者Port 80
在standlone方式下監聽的端口號User daemon
進程運行的屬主Group daemon
進程運行的屬組ServerAdmin you@example.com
管理員信箱(可以修改為自己的郵箱)ServerName www.example.com:8000
服務器指定名稱和端口號,名稱也可以是ip地址DocumentRoot "/usr/local/apache2/htdocs"
文檔服務的根目錄ScriptAlias /cgi-bin/ "/usr/local/apache2/cgi-bin/"
為一個目錄建立別名
不同版本的apache,在目錄和參數名字上有微小的差異,根據名字一般都能猜出來。如有需要,請根據具體情況修改配置內容。 -
添加一個apache用戶,用來管理程序的啟停
adduser apache #(添加apache用戶,按提示進行,密碼設置為apache)
將文件路徑/usr/local/axis2c和/usr/local/apache2
的屬主更改為apachechown -R apache /usr/local/axis2c/
chown -R apache /usr/local/apache2/
這裏,我們使用的是apache用戶,你也可以不使用apache用戶,換成你想要的用戶即可。 -
啟動
進入/usr/local/axis2c/bin
目錄,啟動axis2服務程序./axis2_http_server
。如果準備使用後台啟動的話,可以使用nohup ./axis2_http_server &
.
驗證:在瀏覽器中輸入https://ip:9090/axis/services/WebSimple?wsdl
,ip為該服務器的ip地址。如果訪問成功,會返回一個xml文件。
提示:如果啟動axis2_http_server
程序失敗,可能是當前用戶沒有權限,需要切換到用權限的用戶來啟動,如:su - apache
。 -
停止
如果是直接啟動axis2_http_server
的話,按下ctrl+c即可終止程序。後台啟動的話可以用kill來終止服務。
歡迎光臨我的網站----蝴蝶忽然的博客園----人既無名的專欄。
如果閱讀本文過程中有任何問題,請聯係作者,轉載請注明出處!
最後更新:2017-04-03 05:39:04
上一篇:
隱藏控製台窗口
下一篇:
百度map 3.0初探
部署架構雲 輕鬆玩轉企業雲計算
虛擬貨幣數字交易係統開發
10月17日雲棲精選夜讀:什麼是新零售?阿裏巴巴最新的報告終於說清楚了!(附報告)
警惕“辦公室之狼”:企業文印安全亟待保護
java 自適應響應式 SSM 生成靜態化 手機 平板 PC freemaker 靜態引擎 企業網站源碼
Java中的HashCode(2)之Hashset造成的內存泄露
C# 自定義數字格式字符串 ToString ###,###,###,##0
香港服務器有什麼優勢
遊戲安全資訊精選 2017年 第四期:遊戲行業上周最大DDoS流量超770G, 魔獸世界遭遇DDoS攻擊,開源CMS Drupal 8發布更新修複多處高危漏洞補丁
Java 7 Concurrency Cookbook – Javier Fernández González -前言