Browser Adressen eingabe "lesen" ???

Bash, Shell, PHP, Python, Perl, CGI
Post Reply
xamibor
Posts: 211
Joined: 2003-03-11 16:52
 

Browser Adressen eingabe "lesen" ???

Post by xamibor »

Hi,

wie würdet Ihr es machen wenn mann wissen will was der User in seinem Browser in die adresszeile eingegeben hat?

z.B. Domain "www.lupo.de" existiert .... das Verzeichniss "/Z1" giebt es nicht ...

Also der Bnutzer gibt http://www-lupo.de/Z1 ein ....

nun will ich ihn nicht an einer standard 404 Fehlerseite schicken sondern aus der DB eine Vergleichswert $host (http://www-lupo.de/Z1) und den dazugehörigen Link z.B. http://www-lupo.de/lupo.php?id=124142 ... weiterleiten.

Wie würde dazu die PHP Variable heißen ... giebt es überhaupt eine und wenn nicht kann mann es anders lösen ... ist dringen :-)

Gruß
Andreas
User avatar
Joe User
Project Manager
Project Manager
Posts: 11191
Joined: 2003-02-27 01:00
Location: Hamburg
Contact:
 

Re: Browser Adressen eingabe "lesen" ???

Post by Joe User »

Mal abgesehen davon, dass soetwas IMO sinnfrei ist:
Das ist per Scripting nicht möglich, aber mit mod_rewrite sollte sich etwas basteln lassen...
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
xamibor
Posts: 211
Joined: 2003-03-11 16:52
 

Re: Browser Adressen eingabe "lesen" ???

Post by xamibor »

habe nur ein Problem keine ahnung wie mann das macht ... mod_rewrite .

der Grundgedanke: Wir haben Print Material wo man keine Ellenlange URL reinschreiben kann sondern max. domain + verzeichniss....

es würde höchstens gehen das mann per script (dynamisch) die Verzeichnisse real erstellt eine index.hml mit der Weiterleitung ...

Ist das nicht aber auch eine Sicherheistfrage ein Verzeichniss zu haben was auf 777 steht?

Ich benötige eine einfache und schnelle Lösung :-(

Gruß
Andreas
boozedǃ
Posts: 47
Joined: 2003-09-27 14:55
Location: /root
 

Re: Browser Adressen eingabe "lesen" ???

Post by boozedǃ »

Deinen Einwand mit den Dateirechten kann ich nicht nachvollziehen. Verwechselst du da was?

http://httpd.apache.org/docs/misc/rewriteguide.html
alexander newald
Posts: 1117
Joined: 2002-09-27 00:54
Location: Hannover
Contact:
 

Re: Browser Adressen eingabe "lesen" ???

Post by alexander newald »

Ich habe die Anforderung noch nicht ganz verstanden...

Webseite mit http://www.domain.de/Archiv5 soll auf http://www.was.ganz.de/langes/was/sich/ ... ken/kann/5 weitergeleitet werden?
xamibor
Posts: 211
Joined: 2003-03-11 16:52
 

Re: Browser Adressen eingabe "lesen" ???

Post by xamibor »

@Alexander Newald

genau ....
Nur das verzeichnis: Archiv5 gibt es nicht ist eine art Fake ...
wollte diese "Abfrage" der eingabe auf meiner index.php im Root Verzeichniss machen.

Die IDee ist es so eine art Dynamische .htaccess zu machen

@boozed!
Deinen Einwand mit den Dateirechten kann ich nicht nachvollziehen. Verwechselst du da was?
kann gut sein bin neu und habe es mit den rechten immernoch nicht so drauf. Habe immer nur den Satz vom admin im Kopf "vermeide Verzeichnisse mit 777 Recht"

Gruß
Andreas
flo
Posts: 2223
Joined: 2002-07-28 13:02
Location: Berlin
 

Re: Browser Adressen eingabe "lesen" ???

Post by flo »

Also ich bin von mod_rewrite für solchen Kleinkram wieder abgekommen, die Variablen, die Du brauchst, sind IMHO $http_host und $request_uri in PHP, genaueres, wenn ich dazukomme, das rauszusuchen.

Alternative:
Linke die 404-Seite auf eine Datei, in der nur ein phpinfo-Befehl steht, alles weitere ist dann Deiner Suchfähigkeit überlassen.

Grüße,

flo.
xamibor
Posts: 211
Joined: 2003-03-11 16:52
 

Re: Browser Adressen eingabe "lesen" ???

Post by xamibor »

Danke bin soeben auch drüber gestolpert per Googel als ich nach mod_rewrite Doku in Deutsch geuscht habe :-)

Code: Select all

$domainpfad3 = $SERVER_NAME.$REQUEST_URI;
echo  $domainpfad3;
Supie Danke.

Andreas
xamibor
Posts: 211
Joined: 2003-03-11 16:52
 

Re: Browser Adressen eingabe "lesen" ???

Post by xamibor »

wer sich zu frü freut ....

das problem ist, dass die servervariable _SERVER["SCRIPT_URI"] nach der weiterleitung zur fehlermeldungsseite nicht mehr die eingegebene uri als inhalt hat, sondern die uri der fehlermeldungsseite. mir fällt im moment leider nichts ein, wie das einfach zu realisieren wäre.


lg
Andreas
xamibor
Posts: 211
Joined: 2003-03-11 16:52
 

Re: Browser Adressen eingabe "lesen" ???

Post by xamibor »

@flo
Linke die 404-Seite auf eine Datei, in der nur ein phpinfo-Befehl steht, alles weitere ist dann Deiner Suchfähigkeit überlassen.

nun das Problem ist das Die URI nicht mitgegeben wird ....

lg
Andreas
flo
Posts: 2223
Joined: 2002-07-28 13:02
Location: Berlin
 

Re: Browser Adressen eingabe "lesen" ???

Post by flo »

Das kann so nicht sein, irgendetwas werte ich doch aus:

htaccess:

Code: Select all

ErrorDocument  404 /index.php
in der index.php werden benutzt:
$HTTP_HOST
$REQUEST_URI

Vorsicht, die script-Variable bezieht sich IMHO wirklich auf das physikalische Script, das ausgeführt wird.

Ach ja, das geht so, das weiß ich ... und ich würde es beschwören. ;-)

flo.
[/code]
xamibor
Posts: 211
Joined: 2003-03-11 16:52
 

Re: Browser Adressen eingabe "lesen" ???

Post by xamibor »

@flo

ok ... hierder Link zu meiner "Problemm" Webseite:

http://www.christ-online.de

Gebe ich nun:

http://www.christ-online.de/Freizeiten

ein soll er automatisch an folgende URI weiterleiten:

http://www.christ-online.de/modules.php?name=Freizeiten

Die Webseite ist ein Nuke System ... im Nuke System habe ich ein Modul eingebaut was allgemein Fehler abfänggt per .htaccess etc.

Auf der Index.php des Nuke steht ganz am anfang folgender Code:

Code: Select all

$request_url = $SERVER_NAME.$REQUEST_URI;
Da bekomme ich folgendes raus:
http://www.christ-online.de/Freizeiten

die htacces leitet 404 Fehler an folgende Datei weiter:
ErrorDocument 404 http://www.christ-online.de/modules.php ... c=error404

Innerhalb dieser Datei habe ich dann eine function zu 404 mit folgendem Inhalt:

Code: Select all

function error404() {
global $prefix, $dbi, $user, $module_name, $sql_uri;
include("header.php");

// HOST URL Abfrage
// $request_url = $SERVER_NAME.$REQUEST_URI;
//echo  $request_url;
$sql_uri = "select * from ".$prefix."_dis_host WHERE host='$request_url' AND aktiv='ja'";
echo  $sql_uri;
$res_uri =  sql_query($sql_uri, $dbi);
list($disid, $dishost, $disurl, $disaktiv) = sql_fetch_row($res_uri, $dbi);
echo "DisID:$disid";
//////


OpenTable();

$result = sql_query("select dis_er_404, dis_er_404_tit from ".$prefix."_dis_er", $dbi);
list($dis_er_404, $dis_er_404_tit) = sql_fetch_row($result, $dbi);
{

    echo "<BR><BR><center><b><font size="5">$dis_er_404_tit</font></b></center><BR><br><br>$dis_er_404</font><br><BR><BR><center>[&nbsp;&nbsp;<a href="javascript:history.back(1)">zurück</a>&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;<a href="modules.php?name=4nSuche">Suche</a>&nbsp;&nbsp;]</center>";
    phpinfo();
    }

CloseTable();

include("footer.php");

}
das Problem ist das die URI die per

Code: Select all

$request_url = $SERVER_NAME.$REQUEST_URI;
ermittelt wird nicht weitergegeben wird ....

Zu beachten ist das das Verzeichniss /Freizeiten gar nicht gibt !!!

Gruß
Andreas
dodolin
Posts: 3840
Joined: 2003-01-21 01:59
Location: Sinsheim/Karlsruhe
Contact:
 

Re: Browser Adressen eingabe "lesen" ???

Post by dodolin »

Hast du meinen zuvor geposteten Link denn überhaupt mal angeschaut?!
xamibor
Posts: 211
Joined: 2003-03-11 16:52
 

Re: Browser Adressen eingabe "lesen" ???

Post by xamibor »

Ja bin noch nicht dazu gekommen es mit verstand zu lesen ...

werde es aber jetzt machen

LG
Andreas
flo
Posts: 2223
Joined: 2002-07-28 13:02
Location: Berlin
 

Re: Browser Adressen eingabe "lesen" ???

Post by flo »

Ich glaube, ich weiß, was dodolin meint ...

Wir vergleichen:

Code: Select all

ErrorDocument 404 http://www.christ-online.de/modules.php?name=DisError&file=index&func=error404     
mit

Code: Select all

ErrorDocument 404 /index.php
Und nehmen dazu den Satz:

Code: Select all

At least REDIRECT_URL and REDIRECT_QUERY_STRING will be passed to the new URL (assuming it's a cgi-script or a cgi-include). The other variables will exist only if they existed prior to the error/problem. None of these will be set if your ErrorDocument is an external redirect (i.e., anything starting with a scheme name like http:, even if it refers to the same host as the server).
flo.
xamibor
Posts: 211
Joined: 2003-03-11 16:52
 

Re: Browser Adressen eingabe "lesen" ???

Post by xamibor »

Nun ich nehme mal an das du folgenden Passu meinst:
REDIRECT_HTTP_ACCEPT=*/*, image/gif, image/x-xbitmap, image/jpeg
REDIRECT_HTTP_USER_AGENT=Mozilla/1.1b2 (X11; I; HP-UX A.09.05 9000/712)
REDIRECT_PATH=.:/bin:/usr/local/bin:/etc
REDIRECT_QUERY_STRING=
REDIRECT_REMOTE_ADDR=121.345.78.123
REDIRECT_REMOTE_HOST=ooh.ahhh.com
REDIRECT_SERVER_NAME=crash.bang.edu
REDIRECT_SERVER_PORT=80
REDIRECT_SERVER_SOFTWARE=Apache/0.8.15
REDIRECT_URL=/cgi-bin/buggy.pl
wobei du folgende Variable meinst:

REDIRECT_SERVER_NAME

oder?

Bitte entschuldigt bin aber unwissend ... weiß nicht so recht wie ich diese Variablen mit PHP ansprechen kann

Gruß
Andreas
xamibor
Posts: 211
Joined: 2003-03-11 16:52
 

Re: Browser Adressen eingabe "lesen" ???

Post by xamibor »

habe es mal geändert:

Code: Select all

ErrorDocument 404 http://www.christ-online.de/modules.php?name=DisError&file=index&func=error404  
das http://www.christ-online.de weggenommen ...

nur weiß ich immoment nicht weiter mir fehlt das hintergrundwissen um die zusammenhänge zu verstehen :(

lg
Andreas
Post Reply