ProxyPass 不工作(没有错误)

ProxyPass 不工作(没有错误)

我正在尝试将我的一个 apache 域转发到另一个端口(该端口托管一个由 Nginx 支持的 rails 应用程序)

在我的特定虚拟主机的 http.conf 中我有:

<VirtualHost x.x.x.x:80 [2407:e700:0002:0000:0000:0000:c4b3:36fb]:80>
    ServerName subdomain.domain.com.au
    ServerAlias www.subdomain.domain.com.au
    DocumentRoot /home/user/public_html/app
    ServerAdmin [email protected]
    UseCanonicalName Off
    CustomLog /usr/local/apache/domlogs/subdomain.domain.com.au combined
    CustomLog /usr/local/apache/domlogs/subdomain.domain.com.au-bytes_log "%{%s}t %I .\n%{%s}t %O ."
    ## User user # Needed for Cpanel::ApacheConf
    UserDir enabled user
    <IfModule mod_suphp.c>
        suPHP_UserGroup user user
    </IfModule>
    <IfModule concurrent_php.c>
        php4_admin_value open_basedir "/home/user:/usr/lib/php:/usr/php4/lib/php:/usr/local/lib/php:/usr/local/php4/lib/php:/tmp"
        php5_admin_value open_basedir "/home/user:/usr/lib/php:/usr/local/lib/php:/tmp"
    </IfModule>
    <IfModule !concurrent_php.c>
        <IfModule mod_php4.c>
            php_admin_value open_basedir "/home/user:/usr/lib/php:/usr/php4/lib/php:/usr/local/lib/php:/usr/local/php4/lib/php:/tmp"
        </IfModule>
        <IfModule mod_php5.c>
            php_admin_value open_basedir "/home/user:/usr/lib/php:/usr/local/lib/php:/tmp"
        </IfModule>
        <IfModule sapi_apache2.c>
            php_admin_value open_basedir "/home/user:/usr/lib/php:/usr/php4/lib/php:/usr/local/lib/php:/usr/local/php4/lib/php:/tmp"
        </IfModule>
    </IfModule>
    <IfModule !mod_disable_suexec.c>
        <IfModule !mod_ruid2.c>
            SuexecUserGroup user user
        </IfModule>
    </IfModule>
    <IfModule mod_ruid2.c>
        RMode config
        RUidGid user user
    </IfModule>
    <IfModule itk.c>
        # For more information on MPM ITK, please read:
        #   http://mpm-itk.sesse.net/
        AssignUserID user user
    </IfModule>

    ScriptAlias /cgi-bin/ /home/user/public_html/app/cgi-bin/






    Include "/usr/local/apache/conf/userdata/std/2_2/user/subdomain.domain.com.au/*.conf"
</VirtualHost>

然后我在 /usr/local/apache/conf/userdata/std/2_2/user/subdomain.domain.com.au/*.conf 有一个文件,其中包含以下内容:

ProxyPass / http://x.x.x.x:3013/
ProxyPassReverse / http://x.x.x.x:3013/
ProxyPreserveHost On
ProxyRequests Off

<Proxy *>
  Order allow,deny
  Allow from all
</Proxy>

有什么明显的错误吗?

编辑:我说的不工作是指当我浏览 subdomain.domain.com.au 时,它向我显示一个标题为“/ 的索引”的页面,其中列出了一个 cgi-bin 文件夹,页脚告诉我“由 LiteSpeed Web 服务器端口 80 自豪地提供服务”,因此它根本没有被转发。如果它被正确转发,我期望看到我的 rails 应用程序的根页面。

答案1

我认为你的 apache 不知道该文件的存在。

/usr/local/apache/conf/userdata/std/2_2/user/subdomain.domain.com.au

您的 apache.conf 是否指定 apache 位于该路径中?

如果你跑

netstat -pan |监听

...该端口是否显示正在被监听?

看起来 apache 正在按照 vhost conf 文件中指定的方式引导流量。我不确定它应该做其他什么,因为这就是你告诉它的。

如果您想要重新路由的是那个虚拟主机,为什么里面会有那么多垃圾,为什么不包含该子域的代理指令?

相关内容