« »
11/11/2009建站

Apache代理IIS后让ASP获取正确的来访IP

作为一个纯正的WPer,当然很喜欢PHP程序,IIS下跑PHP总有些不如Apache的地方,但是公司的CRM系统是标准国产货——传说中的ASP程序,而公司网站因为WP的各大优点,又选择了他。无奈之下,选择了让Apache代理IIS来运行CRM程序。

具体代理过程细节后续,先记一下怎么样apache代理IIS后怎么样让来访IP显示正常,而不是127.0.0.1。

细心的童鞋们会发现,处于代理后的ASP程序,获取到的来访者的IP,全是服务器本机IP:127.0.0.1,这样可不太好。看到这个情况的第一个想法就是让Apache传递header给IIS,google了一下,哎……据说Apache的proxys功能里没这一项,要自己写模块,而我的又是exe程序,先不说写不写的来,就是写上了,还要去想怎么运行。

无奈下选择了一个笨办法:改ASP程序。买别人家的ASP程序,自己又不懂ASP,当然PHP也不懂,什么也不懂,凑合着来吧。好在服务器上需要这样功能的ASP程序不多,而且这家的CRM写的还算严谨,就这么改呗。

//一般情况下ASP获取来访IP用的是
Request.ServerVariables("REMOTE_ADDR")
//这种是适合服务器没使用反向代理的前提下的www.ctusky.com
//而使用了代理的就需要把这句改成
Request.ServerVariables("HTTP_X_FORWARDED_FOR")

办法很笨,不过至少满足了。ctusky最近更新的的确不多,可能也是因为我不喜欢伟大的国人的“原创、最新”等精神吧。至少这段时间我所写的,全是我实践过,并且在使用的。

完稿,祝福看到这篇博文的童鞋们。

日志信息 »

该日志于2009-11-11 00:32由 ctusky 发表在 建站 分类下, 通告目前不可用,你可以至底部留下评论。
如需转载烦请添加以下信息: 本文转自www.ctusky.com
如喜欢这篇文章或者本站,建议您RSS订阅本站,以及时地获取更多精彩内容!

看过本文的人还看过 »

没有评论

发表评论 »

返回顶部