使用 Apache ProxyPass 指向快速服务器吗?

使用 Apache ProxyPass 指向快速服务器吗?

我正在尝试对特定目录使用 proxypass,以便可以将其指向我的 express.js 服务器https://othersite.life:1447/

我已经在这个问题上纠结了好几个小时了。真的很希望得到一些见解。

我已经启用这些模式并且正在编辑 /sites-enabled conf 文件。

proxy
proxy_http
proxy_connect
proxy_ftp
<VirtualHost 117.123.133.207:80>
        ServerName s33d.cf
        ServerAlias www.s33d.cf
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html/s33d.cf
SSLProxyEngine on
<Directory /var/www/html/s33d.cf>
        Options -Indexes +FollowSymLinks
        AllowOverride All
LogLevel warn
    </Directory>
        ErrorLog error.log
RewriteEngine on
ProxyRequests Off
ProxyPreserveHost On
RewriteCond %{SERVER_NAME} =www.s33d.cf [OR]
RewriteCond %{SERVER_NAME} =s33d.cf
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]

    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>
ProxyPass /var/www/html/s33d.cf/node https://othersite.life:1447/
    ProxyPassReverse /var/www/html/s33d.cf/node https://othersite.life:1447/
</VirtualHost>

域 s33d.cf 运行正常,但当我转到 s33d.cf/node 时,它​​不使用 proxypass 设置。两个站点都托管在同一台服务器上。

据我所知,我没有收到任何错误。

答案1

ProxyPass 后面跟着 URI 路径,而不是目录/文件系统路径。您当前的配置用于映射http://www.s33d.cf/var/www/html/s33d.cf/node,而不是用于映射http://www.s33d.cf/node/https://othersite.life:1447

相反使用

ProxyPass /node/ https://othersite.life:1447/

但是您将所有请求重定向到 https,因此在纯 http VirtualHost 块中配置的其他任何内容可能都无关紧要……

相关内容