想要在.htaccess中开启反向代理功能都不行[apache中没有mod_proxy模块].htaccess 文件内容如下
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)$ http://sogou.weixin.com/$1 [P]
“proxy|P”(强制为代理)
此标记使替换成分被内部地强制作为代理请求发送,并立即中断重写处理,然后把处理移交给mod_proxy模块。你必须确保此替换串是一个能够被mod_proxy处理的有效URI(比如以http://hostname开头),否则将得到一个代理模块返回的错误。使用这个标记,可以把某些远程成分映射到本地服务器域名空间,从而增强了ProxyPass指令的功能。
注意:要使用这个功能,必须已经启用了mod_proxy模块。
自带的wdlinux中apache部分配置文件是这样,
# Example:
# LoadModule foo_module modules/mod_foo.so
LoadModule rpaf_module modules/mod_rpaf-2.0.so
LoadModule php5_module modules/libphp5.so
#
a.首先知道了我自己的apache版本为httpd-2.2.22
下载源码到/root/httpd-2.2.22.tar.gz ,在apache.org提供的站点上没找着这个版本,我在csdn上上传了一个,有需要的可以用
################下载资源##################
httpd-2.2.22.tar.gz源码包 – 下载频道 – CSDN.NET http://download.csdn.net/detail/l496501043/9435762
################下载资源##################
cd /root/
tar zxvf httpd-2.2.22.tar.gz
cd httpd-2.2.22/modules/proxy/
#编译安装
/www/wdlinux/httpd-2.2.22/bin/apxs -i -c -a mod_proxy.c proxy_util.c /www/wdlinux/httpd-2.2.22/bin/apxs -i -c -a mod_proxy_http.c/www/wdlinux/httpd-2.2.22/bin/apxs -i -c -a mod_proxy_ftp.c/www/wdlinux/httpd-2.2.22/bin/apxs -i -c -a mod_proxy_connect.c
如果正常的话会在
/www/wdlinux/httpd-2.2.22/modules/目录下生成
mod_proxy.so、mod_proxy_connect.so、mod_proxy_ftp.so、mod_proxy_http.so几个文件。
apache配置/www/wdlinux/httpd-2.2.22/conf/httpd.conf已经增加下面四行配置语句,对比上面提到的配置文件
# Example:
# LoadModule foo_module modules/mod_foo.so
LoadModule rpaf_module modules/mod_rpaf-2.0.so
LoadModule php5_module modules/libphp5.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
#
重启apache,看.htaccess反向代理的规则是否生效。[已经生效]