Apache Cloudflare和mod_代理

Apache Cloudflare和mod_代理,apache,.htaccess,mod-rewrite,mod-proxy,cloudflare,Apache,.htaccess,Mod Rewrite,Mod Proxy,Cloudflare,我已经在使用mod_proxy从example-domain.com重定向到example-domain.com:8080,在没有CloudFlare(保留代理)的情况下它可以工作。。。但使用CloudFlare,它只需响应一个错误1000个DNS点就可以访问禁止的IP。有没有机会度过这个难关,仍然使用CloudFlare来保护自己?我不希望地址在mod_rewrite中显示类似的内容,这就是我重定向的原因,在端口80上托管是不可能的,所以没有更改 我的vhost配置: <Dire

我已经在使用
mod_proxy
从example-domain.com重定向到example-domain.com:8080,在没有CloudFlare(保留代理)的情况下它可以工作。。。但使用CloudFlare,它只需响应一个错误1000个DNS点就可以访问禁止的IP。有没有机会度过这个难关,仍然使用CloudFlare来保护自己?我不希望地址在mod_rewrite中显示类似的内容,这就是我重定向的原因,在端口80上托管是不可能的,所以没有更改

我的vhost配置:

    <Directory /var/www/example-domain.com>
            AllowOverride None
            Require all denied
            </Directory>

    <VirtualHost *:80>
            DocumentRoot /var/www/example-domain.com/web

            ServerName example-domain.com
            ServerAlias www.example-domain.com 
            ServerAlias alias.example-domain.com
            ServerAdmin webmaster@example-domain.com
            ProxyPreserveHost On
            ProxyRequests Off

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

            ProxyPass / http://example-domain.com:8080/
            ProxyPassReverse / http://example-domain.com:8080/

    </VirtualHost>

不允许超限
要求全部拒绝
DocumentRoot/var/www/example-domain.com/web
ServerName示例-domain.com
ServerAlias www.example-domain.com
ServerAlias alias.example-domain.com
服务器管理员webmaster@example-domain.com
代理主机
代理请求关闭
命令拒绝,允许
通融
ProxyPass/http://example-domain.com:8080/
ProxyPassReverse/http://example-domain.com:8080/

无论您通过哪个端口访问CloudFlare,CloudFlare都倾向于先尝试端口80/443。如果它可以在自己代理期间连接到这些端口,它将停止在那里,然后不尝试您实际想要的端口(在您的案例8080中)

因此,这看起来像是一个循环,您将请求从CloudFlare指向代理,然后通过CloudFlare指向端口8080处的服务器。CloudFlare随后正在剥离端口8080并通过普通连接进行连接

解决此问题的最佳方法是简单地将ProxyPass设置为通过一个不通过CloudFlare网络或本地主机运行的URL

因此,将VirtualHost中的ProxyPass更改为:

        ProxyPass / http://direct.example-domain.com:8080/
        ProxyPassReverse / http://direct.example-domain.com:8080/
其中direct.example-domain.com不通过CloudFlare网络(CloudFlare DNS中的灰色云,前提是您正在进行完整的主机CloudFlare设置)

或者,将代理权限更改为通过本地主机:

        ProxyPass / http://127.0.0.1:8080/
        ProxyPassReverse / http://127.0.0.1:8080/
玩得开心