Ich habe zwei Server im Intranet, einen Datenbankserver und einen Webserver. Und lassen Sie den Netzwerkadministrator dem Webserver eine externe Netzwerk-IP zuordnen, sodass gleichzeitig auf das externe Netzwerk und das interne Netzwerk zugegriffen werden kann. Dies führt jedoch zu einem Problem. Der Webserver verwendet die relative Adresse des internen Netzwerks, um Daten abzurufen. Auf diese Weise können die Daten nicht abgerufen werden, sondern nur der Frame angezeigt werden. Wenn auch der Datenbankserver zugeordnet ist, ist das Intranet nicht zugänglich und ich kann es nicht debuggen. Wenn die beiden Server zu einem zusammengefasst werden, wird die Laufgeschwindigkeit beeinträchtigt, und jetzt möchte der Chef kein Geld mehr in ihn investieren, schließlich handelt es sich nur um eine Demonstration. Das Problem kann auch gelöst werden, indem die beiden Maschinen in den Netzwerk-Computerraum des Labors gebracht und direkt an das externe Netzwerk angeschlossen werden. Der Netzwerk-Computerraum ist jedoch geschlossen und verfügt über eine Zugangskarte, sodass ich nicht häufig hineingehen und Änderungen vornehmen kann.
Ich habe sorgfältig darüber nachgedacht und bin der Meinung, dass dieses Problem durch eine Beurteilung gelöst werden sollte. Beurteilen Sie einfach, ob es sich bei der Zugriffsadresse um die interne Netzwerk-IP oder die externe Netzwerk-IP handelt, und führen Sie den entsprechenden Vorgang auf der Grundlage dieser Beurteilung aus Ich habe festgestellt, dass die Verwendung von JS gut ist, da die von JS erhaltene IP Folgendes bietet: Ein Vorteil besteht darin, dass der Computer die vom lokalen Computer festgelegte IP erhält. Wenn der Computer über ein LAN mit dem Internet verbunden ist, erhält er im Gegensatz zu Request die LAN-IP des Computers in ASP, das die IP des mit dem Internet verbundenen Computers erhält.
Code (von jemand anderem kopiert, aber Sie können darauf verweisen :))
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>JS erhält Client-IP</title>
</head>
<body>
<script type="text/javascript" language="javascript">
<!--
Funktion GetLocalIPAddress()
{
var obj = null;
var rslt = "";
versuchen
{
obj = new ActiveXObject("rcbdyctl.Setting");
rslt = obj.GetIPAddress;
obj = null;
}
fangen(e)
{
//Ausnahme tritt auf
}
rslt zurückgeben;
}
document.write("Ihre IP ist: " + GetLocalIPAddress());
//-->
</script>
</body>
</html>
Es wird gesagt, dass während der Verwendung Warnungen erscheinen können, aber das ist nur ein Test, es sollte kein Problem sein, haha :)