简体   繁体   中英

What is wrong with this apache virtualhost directive with WebLogic Proxy Plug-In mod_wl_24.so?

I have a problem configuring apache ProxyPass directive for two applications that have two different Context Paths and ports .The one I use the apache to proxy path the requests to tomcat, The Other to weblogic by WebLogic Proxy mod_wl_24.so. Scenario: 1. http://wxapp:8444/WechatBank/index.html to weblogic server 2. http://wxapp:8443/DirectBank/views/index.html to access apapche local static resources;

my apahce http-vhost.conf likes this :

 <VirtualHost *:8444>
    ServerName test.com
    <Location /WechatBank>
     <IfModule mod_weblogic.c>
     WeblogicHost wxapp
     WeblogicPort 9091
     ConnectTimeoutSecs 49
     MatchExpression *.html
     WLLogFile       /home/wxapache/admin/tmp/proxy.log
     WLTempDir       "/home/wxapache/admin/proxy_tmp/"
     </IfModule>
    </Location>
    ErrorLog "logs/error_8444_log"
    CustomLog "logs/access_8444_log" common
    </VirtualHost>

    <VirtualHost *:8443>
        ServerName test.com
        ProxyPassMatch ^/DirectBank/(service|server)/(.*) http://wxapp:8443/DirectBank
        ProxyPass /DirectBank !
        ErrorLog "logs/error_8443_log"
        CustomLog "logs/access8443__log" common
    </VirtualHost>

but I access . http://wxapp:8443/DirectBank/views/index.html get weblogic bridge message : the Failure of Web Server Bridge: Incorrect configuration .Canot continue the apache error log like as this:

[Tue Jul 24 14:19:31.950654 2018] [proxy:trace2] [pid 32687:tid 1142970688] mod_proxy.c(674): [client 158.58.12.180:64737] AH03461: attempting to match URI path '/DirectBank/views/index.html' against pattern '^/DirectBank/(service|home)/(.*)$' for proxying
[Tue Jul 24 14:19:31.950665 2018] [proxy:trace2] [pid 32687:tid 1142970688] mod_proxy.c(674): [client 158.58.12.180:64737] AH03461: attempting to match URI path '/DirectBank/views/index.html' against prefix '/DirectBank' for proxying
[Tue Jul 24 14:19:31.950672 2018] [proxy:trace1] [pid 32687:tid 1142970688] mod_proxy.c(727): [client 158.58.12.180:64737] AH03463: proxying is explicitly disabled for URI path '/DirectBank/views/index.html'; declining
[Tue Jul 24 14:19:31.950729 2018] [authz_core:debug] [pid 32687:tid 1142970688] mod_authz_core.c(835): [client 158.58.12.180:64737] AH01628: authorization result: granted (no directives)
[Tue Jul 24 14:19:31.950741 2018] [core:trace3] [pid 32687:tid 1142970688] request.c(304): [client 158.58.12.180:64737] request authorized without authentication by access_checker_ex hook: /DirectBank/views/index.html
[Tue Jul 24 14:19:31.950867 2018] [weblogic:debug] [pid 32687:tid 1142970688] ApacheProxy.cpp(878): [client 158.58.12.180:64737] <3268715324131713> ================New Request: [GET /DirectBank/views/index.html HTTP/1.1] =================
[Tue Jul 24 14:19:31.950889 2018] [weblogic:debug] [pid 32687:tid 1142970688] ApacheProxy.cpp(1034): [client 158.58.12.180:64737] <3268715324131713> Using Uri /DirectBank/views/index.html
[Tue Jul 24 14:19:31.950899 2018] [weblogic:debug] [pid 32687:tid 1142970688] ApacheProxy.cpp(1054): [client 158.58.12.180:64737] <3268715324131713> After trimming path: '/DirectBank/views/index.html'
[Tue Jul 24 14:19:31.950906 2018] [weblogic:debug] [pid 32687:tid 1142970688] ApacheProxy.cpp(1130): [client 158.58.12.180:64737] <3268715324131713> The final request string is '/DirectBank/views/index.html'
[Tue Jul 24 14:19:31.950915 2018] [weblogic:error] [pid 32687:tid 1142970688] [client 158.58.12.180:64737] <3268715324131713> Neither 'WebLogicCluster' nor 'WebLogicHost' specified in parameters
[Tue Jul 24 14:19:31.950935 2018] [weblogic:error] [pid 32687:tid 1142970688] [client 158.58.12.180:64737] <3268715324131713> *******Exception type [CONFIG_ERROR] (Neither 'WebLogicCluster' nor 'WebLogicHost' specified in parameters\n) raised at line 2192 of ApacheProxy.cpp
[Tue Jul 24 14:19:31.951026 2018] [weblogic:error] [pid 32687:tid 1142970688] [client 158.58.12.180:64737] CONFIG_ERROR [line 2192 of ApacheProxy.cpp]: Neither 'WebLogicCluster' nor 'WebLogicHost' specified in parameters\n
[Tue Jul 24 14:19:31.951058 2018] [http:trace3] [pid 32687:tid 1142970688] http_filters.c(1128): [client 158.58.12.180:64737] Response sent with status 500, headers:
[Tue Jul 24 14:19:31.951073 2018] [http:trace5] [pid 32687:tid 1142970688] http_filters.c(1135): [client 158.58.12.180:64737]   Date: Tue, 24 Jul 2018 06:19:31 GMT
[Tue Jul 24 14:19:31.951079 2018] [http:trace5] [pid 32687:tid 1142970688] http_filters.c(1138): [client 158.58.12.180:64737]   Server: Apache/2.4.33 (Unix)
[Tue Jul 24 14:19:31.951086 2018] [http:trace4] [pid 32687:tid 1142970688] http_filters.c(957): [client 158.58.12.180:64737]   Content-Length: 184
[Tue Jul 24 14:19:31.951092 2018] [http:trace4] [pid 32687:tid 1142970688] http_filters.c(957): [client 158.58.12.180:64737]   Connection: close
[Tue Jul 24 14:19:31.951097 2018] [http:trace4] [pid 32687:tid 1142970688] http_filters.c(957): [client 158.58.12.180:64737]   Content-Type: text/html

Based on your request, you need to serve local files via Apache. A simpler approach would be the following :

<VirtualHost *:8443>
    ServerName test.com
    Alias /DirectBank/ "/opt/SOME_LOCAL_FOLDER"
    <Directory "/opt/SOME_LOCAL_FOLDER">
      Options None
      AllowOverride None
      Order allow,deny
      Allow from all
    </Directory>
    ErrorLog "logs/error_8443_log"
    CustomLog "logs/access8443__log" common
</VirtualHost>

In my httpd.conf , i set DocumentRoot. my static files are on /usr/local/apache/www/project_files

 DocumentRoot "/usr/local/apache/www"
<Directory "/usr/local/apache/www">
    #
    # Possible values for the Options directive are "None", "All",
    # or any combination of:
    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
    #
    # Note that "MultiViews" must be named *explicitly* --- "Options All"
    # doesn't give it to you.
    #
    # The Options directive is both complicated and important.  Please see
    # http://httpd.apache.org/docs/2.4/mod/core.html#options
    # for more information.
    #
    Options FollowSymLinks

    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   AllowOverride FileInfo AuthConfig Limit
    #
    AllowOverride None

    #
    # Controls who can get stuff from this server.
    #
    Require all granted
</Directory>

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM