NAVIGATIE

Freetime overzicht
Zoeken


  RUBRIEKEN

FAQ / Help
Wat mag niet?
WZL Wedstrijden
WZL Chat
WZL Toolbar
WZL Statistieken
WZL leden
WZL shop
E-cards

RSS

Fun-feed
Babe-feed
Stud-feed

Een groot aantal pokerrooms geven de mogelijkheid om poker te spelen op internet en geld te storten via het veilige iDeal betaalsysteem.
Overzicht » Computer » Programmeren » XAMPP/PHP: extern IP van server
Onderaan pagina
nyx 3.19
WZL-lid
Sinds 18/1/2003
T: 6 R: 53
26/2/2010 - 15:42u | Quote
Ik heb XAMPP draaien op een Windows-pc, en ik zou graag het externe IP van de server willen tonen voor mezelf.
echo("server addr: " . $_SERVER ['SERVER_ADDR'] . "<br>" );
echo("remote addr: " . $_SERVER ['REMOTE_ADDR'] . "<br>" );
echo("http host: " . $_SERVER ['HTTP_HOST'] . "<br>" ) ;


levert dit op:
server addr: 127.0.0.1
remote addr: 127.0.0.1
http host: localhost

terwijl ik graag iets in de vorm van "15.128.12.75" gezien zou hebben...


Proberen om een lang verhaal kort te maken:
- we hebben een externe schijf vol ingescande documenten (pdf) (aantal terabyte groot). We willen die graag beschikbaar maken via het web (intranet), zonder keiveel te moeten betalen voor een gehoste server.
- we hebben een test-pc waar we dan XAMPP op draaien, als we de httpd.conf aanpassen, kunnen we voor de externe schijf (F: / ) een Alias aanmaken zodat de ext.HD via de server beschikbaar is.
- IP van server is wss dynamisch, dns en nameservice lukt niet, dus we kunnen moeilijk continu een veranderd IP aan iedereen doorgeven. Dus is het de bedoeling dat we via SharePoint een status van de ext.HD weergeven, met de correcte URL.
-XAMPP (apache) en SharePoint (IIS) gaat niet geweldig goed samen (ook te weinig rechten om zelf een .aspx up te loaden), dus had ik het idee om via php een RSS (.xml) te genereren (die continu geupdated wordt via een cron-job).
SharePoint heeft een module om RSS in te lezen.
- in de RSS moet ik natuurlijk een link naar de server leggen: <link>. Ik had dit graag dynamisch gedaan, zodat bij verandering van IP van de server, alles automatisch zou gaan.

Het probleem is nu natuurlijk dat de cron-job op de server ervoor zorgt dat hij zijn IP als 127.0.0.1 ziet, en dat ook zo wegschrijft in de .xml. Voor de users is zoiets waardeloos natuurlijk.

Iemand een suggestie?

(via whatsmyip.org krijg ik het externe IP van het bedrijf, is ook ni de bedoeling)
lordfragger
[mod], gewoon [mod]
Sinds 28/6/2004
T:15 - R:3135
26/2/2010 - 18:39u | Quote
Dat je het localhost adres krijgt is normaal, php geeft het adres van de interface waar de request op binnen komt (in dit geval de server zelf dus).

Voor zover ik weet is het via code oplossen de enige manier. Het zal dus iets worden à la ipconfig en dan de output parsen.

De kans is trouwens vrij groot dat die pc altijd hetzelfde ip gaat krijgen, tenzij hij enkele dagen down is de dhcp server gereboot wordt. Een vast ip aanvragen aan de netwerk admin lijkt mij toch een beter idee eigenlijk, of zien dat dns degelijk werkt natuurlijk.
WishMaster
[mod] 666
Sinds 26/2/2003
T:99 - R:2018
26/2/2010 - 19:37u | Quote
Dzju...

eens zien of ik da van 'ipconfig' geforceerd kan krijgen dan...

IP is inderdaad meestal hetzelfde, maar vroeg of laat gaat da toch eens anders zijn, en dan zitte met de gebakken peren he...
Static IP aanvragen is mogelijk, maar dan moeten we zeggen waarom... "om een illegale server te draaien" is niet het antwoord dat ze willen horen

edit:
oplossing gevonden !

<?php
exec("ipconfig",$catch);
foreach($catch as $line){
if(eregi('IPv4-adres',$line)){
list($t,$ip) = split(':',$line);
echo("IP is " . $ip . "\n";
}
}
?>


Ge moet op de server eerst cmd --> ipconfig doen, en dan eens kijken wat hij zegt vóór het IP adres. "IPv4-adres" in mijn Win7 geval. Dat moet ge dan ook gebruiken na de 'eregi'.

Laatst aangepast door WishMaster op 26/02/2010 20:07:59u (1x aangepast)
 
Bovenaan pagina