最近我需要將websocket服務器與apache2集成,並且我發現apache2.4已支持帶有模塊的websocket:mod_proxy_wstunnel
。 http://httpd.apache.org/docs/2.4/mod/mod_proxy_wstunnel.html無法將模塊/ mod_proxy_wstunnel.so加載到服務器中
我自己編他們,而是遇到了一個問題:
httpd: Syntax error on line 122 of /usr/local/apache2/conf/httpd.conf: Cannot load modules/mod_proxy_wstunnel.so into server: /usr/local/apache2/modules/mod_proxy_wstunnel.so: undefined symbol: ap_proxy_release_connection
- 環境信息:
- OS:CentOS的6.8
- PHP:PHP-7.0.10
- apache:httpd-2.4.23
我的步驟是:
- 下載源代碼。
- PHP7 github.com/php/php-src/releases/tag/php-7.0.10
- apache2.4 github.com/apache/httpd/releases/tag/2.4.23
- 複製到我的工作區和焦油,比如說/家
- 外殼>焦油-xjf PHP-7.0.10.tar.bz2
- 外殼>焦油-xjf的httpd-2.4.23.tar.bz2
- 安裝GCC:百勝安裝gcc
- 編譯Apache
- 下來四月:
apr-1.5.2.tar.gz
apr-util-1.5.4.tar.gz
- 副本
/httpd-2.4.23/srclib
tar -zvf apr-1.5.2.tar.gz
tar -zvf apr-util-1.5.4.tar.gz
- 修改文件名:
apr-1.5.2
爲apr
apr-util-1.5.4
爲apr-util
- 安裝PCRE
yum install pcre-devel
./configure --enable-so --enable-http --enable-proxy --enable-proxy-http --with-included-apr --enable-proxy-wstunnel
- 使& &使安裝
- 設置Apache服務器的ip:
外殼>vi /usr/local/apache2/conf/httpd.conf
服務器名127.0.0.1
- 下來四月:
- 編譯PHP
- 的libxml2:
百勝安裝的libxml2-devel的 - 的mkdir在/ usr /本地/ PHP7
- 。/ configure --prefix =/usr/local/php7 --with-mysqli --enable-mysqlnd --with-mysql-sock =/var/lib/mysql/mysql.sock --with-apxs2 =/usr/local/Apache2的/ bin中/ APXS
- 使& &使安裝
- CP -v ./php.ini-production /usr/local/php7/lib/php.ini
- 配置的httpd.conf
殼> VI /usr/local/apache2/conf/httpd.conf
<FilesMatch \.php$> SetHandler application/x-httpd-php </FilesMatch>
- 的libxml2:
- enalbe mod_proxy_wstunnel 殼> VI的/ usr/LOC人/ apache2的/ conf目錄/ httpd.conf中
LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
以上就是我的腳步。然後,我想開始我的Apache2:
/usr/local/apache2/bin/apachectl start
得到了以下錯誤:
httpd: Syntax error on line 122 of /usr/local/apache2/conf/httpd.conf: Cannot load modules/mod_proxy_wstunnel.so into server: /usr/local/apache2/modules/mod_proxy_wstunnel.so: undefined symbol: ap_proxy_release_connection
我有谷歌,但不能找到一些有用的信息。
謝謝,我的朋友。那是我的錯誤。 – Does