【问题标题】:ProxyPass rule for Wordpress Site with Apache2使用 Apache2 的 Wordpress 站点的 ProxyPass 规则
【发布时间】:2016-03-15 10:48:06
【问题描述】:

我有一个在 wordpress.myorg.com 上运行的 wordpress 网站。对于身份验证,我必须将其重定向到运行 CAS 服务器的内部服务器。

内部服务器没有 DNS 名称。因此,我在 HOST 文件中使用本地 DNS 和 IP 地址来重定向到 CAS 服务器。所有的事情都以这种方式正常工作。

现在我想添加 ProxyPass 规则,以便用户始终只能看到 wordpress.myorg.com。

添加 ProxyPass 规则后,当我点击 wordpress.myorg.com/wp-login.php 时,它返回带有 500 内部错误的页面,而不是显示 CAS 登录屏幕。

这是我在 Apache Web 服务器中为 Wordpress 站点完成的虚拟主机条目

<VirtualHost *:80>
    ServerAdmin your_email_address
    ServerName wordpress.myorg.com
    ServerAlias wordpress.myorg.com

    DocumentRoot /var/www/html/wordpress
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /var/www/html/wordpress>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>

    RewriteEngine On
    Options +FollowSymLinks
    RewriteCond %{HTTPS} !=on
    RewriteRule ^/?CAS/(.*) https://wordpress.myorg.com/CAS/$1 [R,NE,L]

</VirtualHost>
<VirtualHost *:443>

    ServerAdmin your_email_address
    ServerName wordpress.myorg.com
    ServerAlias wordpress.myorg.com

    SSLEngine on
    SSLCertificateFile /etc/apache2/ssl/myorg.com.crt
    SSLCertificateKeyFile /etc/apache2/ssl/myorg.com.key

    ProxyRequests On
    ProxyVia On

    ProxyPass /CAS/ ajp://cas.myorg.com:8009/CAS/
    ProxyPassReverse /CAS/ ajp://cas.myorg.com:8009/CAS/

</VirtualHost>

对此的任何帮助将不胜感激。

谢谢。

【问题讨论】:

    标签: wordpress apache mod-rewrite mod-proxy http-proxy


    【解决方案1】:

    有问题。我忘记启用 SSLProxyEngine。刚刚启用它,它的工作就像一个魅力。

    编辑 HTTPS 部分。

    <VirtualHost *:443>
    
        ServerAdmin your_email_address
        ServerName wordpress.myorg.com
        ServerAlias wordpress.myorg.com
    
        SSLEngine on
    ## Added these lines ##
        SSLProxyEngine On
        SSLProxyCheckPeerCN on
        SSLProxyCheckPeerExpire on
    ## -- ##
        SSLCertificateFile /etc/apache2/ssl/myorg.com.crt
        SSLCertificateKeyFile /etc/apache2/ssl/myorg.com.key
    
        ProxyRequests On
        ProxyVia On
    
        ProxyPass /CAS/ ajp://cas.myorg.com:8009/CAS/
        ProxyPassReverse /CAS/ ajp://cas.myorg.com:8009/CAS/
    
    </VirtualHost>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-30
      • 2011-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-16
      • 2013-07-01
      • 2015-04-18
      相关资源
      最近更新 更多