asp.net - 获取网站客户端的IP地址返回主机IP
问题描述
我有一个通过 IIS 托管的网站,并希望有一个包含 . 在那个 testfile.aspx 中,我想获取客户端的 IP 地址并根据要求进行重定向。但是,当我尝试获取 ip 地址时,我得到的是我的网站托管的机器的 ip,而不是用户
我已经尝试了上面链接中的所有方法,它们都返回了主机的 IP 地址。我已经尝试了包含页面中的代码以及示例测试页面后面的代码,但它仍然无法正常工作。
版本 1
Dim ipAdd As String
ipAdd = Request.ServerVariables("REMOTE_ADDR")
ClientScript.RegisterStartupScript(Me.GetType(), "myalert", "alert('This is your ip " & ipAdd & "');", True)
版本 2
ClientScript.RegisterStartupScript(Me.GetType(), "myalert", "alert('This is your ip " & Request.UserHostAddress & "');", True)
这两种方法都返回我的 IIS Web 服务器的公共 IP
解决方案
我在类文件中使用它来获取 UserHostAddress,它是连接客户端的 IP 地址:
string sUserHostAddress = HttpContext.Current.Request.UserHostAddress;
我正在使用 WebForms,我可以使用它在文件后面的代码中获取它:
string sUserHostAddress = Request.UserHostAddress;
希望这可以帮助。
编辑:我在我的网站上放了一个页面,您可以在其中看到结果。 检查您的 IP 地址
推荐阅读
- progressive-web-apps - 如何将我的 PWA 发布到 App Store?
- python - 安装 scikit-learn 库时出错
- php - 函数 App\Http\Controllers\AdminController::updateSlider() 的参数太少,在第 54 行传入了 1 个.... 并且预期正好有 2 个 - laravel
- pandas - 根据 Pandas 数据框中的多行执行计算
- android - 片段布局为空白
- laravel-5 - 我如何在 laravel 5.7 的元标记中添加内容
- sql - SQL - 请求按用户查找平均贷款
- python - 使用 Python 从 Web 读取表格
- kubernetes - Kubernetes 水平 pod 自动扩缩器 - taget 副本计算
- javascript - html-duration-picker 在选项卡中无法正常工作