作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在网上看到很多提到使用 ProxyPreserveHost On
确保代理后端接收原始调用者的主机名。我正在使用它来加强我的 Web 应用程序的安全性(Java、Tomcat),而如果我的日志能够显示用户实际所在的位置也会很好。我的 Tomcat 日志现在显示了这一点——非常没用:
127.0.0.1 - - [17/Mar/2013:06:32:13 +0100] "GET /webapp/frontend/app/partials/welcome.html HTTP/1.1" 200 54
<VirtualHost *:80>
ProxyPreserveHost On
ProxyPass /webapp http://localhost:8080/webapp
ProxyPassReverse /webapp http://localhost:8080/webapp
RewriteEngine On
RewriteRule ^/$ /webapp/frontend/app/ [proxy]
RewriteRule ^/webapp/$ /webapp/frontend/app/ [redirect]
RewriteRule ^/webapp/app/$ /webapp/frontend/app/ [redirect]
000-default
中的默认内容)
sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod rewrite
最佳答案
我假设您担心的是您的访问日志在客户端字段中仍然包含 127.0.0.1 。这不受 ProxyPreserveHost
的影响;这是连接到 Apache 的网络端点的 IP 地址。对于来自另一台服务器的代理连接,这将始终是 localhost。
另外,ProxyPreserveHost
是关于保留 Host
客户端发送的 header ,而不是保留客户端的原始 IP。换句话说,这是关于信息朝着错误的方向发展的信息;它保留了客户端发送的服务器名称,而不是客户端的 IP。
我认为您的问题与 this question 相同.我要补充一点,您可以记录 X-Forwarded-For
使用 %{X-Forwarded-For}i
在您的日志中添加标题在您的 CustomLog
配置。
关于apache - ProxyPreserveHost 似乎对我没什么用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15457923/
我在网上看到很多提到使用 ProxyPreserveHost On确保代理后端接收原始调用者的主机名。我正在使用它来加强我的 Web 应用程序的安全性(Java、Tomcat),而如果我的日志能够显示
我是一名优秀的程序员,十分优秀!