2016-09-28 4 views
0

最近、私はwebsocketサーバーとapache2を統合する必要があります。そして、apache2.4がモジュールweb3ocketをサポートしていることがわかります:mod_proxy_wstunnelhttp://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

私の手順は次のとおりです。

  1. ダウンロードソースコード。
    • PHP7 github.com/php/php-src/releases/tag/php-7.0.10
    • apache2.4 github.com/apache/httpd/releases/tag/2.4.23
    私のワークスペースやタール、たとえば/ホームへ
  2. コピー
    • シェル>タール-xjfのphp-7.0.10.tar.bz2
    • シェル>タール-xjfのhttpd-2.4.23.tar.bz2
  3. のgccをインストールします:yumの4月の下のgcc
  4. コンパイルapacheの
    • をインストール:apr-1.5.2.tar.gzapr-util-1.5.4.tar.gz
    • コピーを/httpd-2.4.23/srclib
      tar -zvf apr-1.5.2.tar.gztar -zvf apr-util-1.5.4.tar.gz
    • にファイル名を変更します。apr-utilとしてapr
      apr-util-1.5.4として
      apr-1.5.2
    • PCRE
      yum install pcre-devel
    • ./configure --enable-so --enable-http --enable-proxy --enable-proxy-http --with-included-apr --enable-proxy-wstunnel
    • & &は、make installを作るインストール
    • 設定ApacheサーバのIP:
      シェル>vi /usr/local/apache2/conf/httpd.conf のServerName 127.0.0.1
  5. コンパイルPHP
    • のlibxml2:
      のyumのlibxml2-develの
    • PHP7 /ます。mkdirは/ usr/localをインストールします。/ 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
    • のconfigureのhttpd.conf
      シェルをmake installを作りますVI /usr/local/apache2/conf/httpd.conf
      <FilesMatch \.php$> SetHandler application/x-httpd-php </FilesMatch>
  6. 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

私はそれをグーグル持っていますが、いくつかの有用な情報を見つけることができません。

答えて

0

mod_proxyとmod_proxy_wstunnelを読み込む必要があります。 mod_proxyを使わずに基底のプロキシモジュール(http/fcgi/ajp/wstunnel)をロードすると、このエラーが発生します。

設定を確認して、mod_proxyとmod_proxy_wstunnelのディレクティブがLoadModuleであることを確認してください。

apachectl -Mの出力を使用して、Apacheがロードしているモジュールをチェックすることもできます。

+0

ありがとう、私の友人。それは私の間違いです。 – Does

関連する問題