SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Handbuch der Java-Programmierung

Handbuch der Java-Programmierung zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > Apache HTTP-Server

Apache HTTP-Server Alles was Ihr über den Apache diskutieren möchtet, gehört hierein

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 28.07.2003, 22:19:41
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
mod_rewrite lokal nutzen?

Moin,

hatte meine HP vor kurzem um die Funktionalität von mod_rewrite erweitert, allerdings funzt es nur online.
Es scheitert momentan an der .htaccess:
RewriteRule !(flashhasser|dbcf|gsgs|wfst)|.(gif|jpg|png|css|zip|js|htm|log|ico|txt |php)$ /is/htdocs/xxxxx/www.dbcf.de/mod_rewrite.php
Das klappt online ja 1a, aber wie mache ich jetzt eine Fallunterscheidung, dass, wenn ich lokal arbeite er ein anderes Verzeichnis nutzen soll?


MfG




Edit: Ich flehe um Gnade! Da haben wir jetzt schon ein Forum für Apache und wo schreibe ich es hin?? Dumm, dumm, dumm!
__________________
sic!
--> http://dbCF.de/

Geändert von ­c­4­ (29.07.2003 um 08:24:30 Uhr)
Mit Zitat antworten
  #2  
Alt 29.07.2003, 08:24:36
Damir Damir ist offline
Administrator
 
Registriert seit: Jan 2002
Ort: Köln
Alter: 53
Beiträge: 1.276
Hi C4,
das Thema hatten wir erst gerade;-))
Ist das nicht ein Apache-Thema ;-) ???

Schau mal hier, hast sicherlich eine Kleinigkeit vergessen:
http://www.aboutwebdesign.de/awd/con...42302787.shtml

Bye Damir
Mit Zitat antworten
  #3  
Alt 29.07.2003, 08:28:21
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
Ja, das mit Apache-Forum fiel mir noch vor Deinem Beitrag ein....
Bist doch Admin, verschieb es doch. :)

Das Thema letztens enthielt nichts, was sich hierfür gebrauchen ließe.

Die Seite scheint auch einen brauchbaren Abschnitt zu enthalten. Werde ich heute Abend mal testen. Danke dafür.
__________________
sic!
--> http://dbCF.de/
Mit Zitat antworten
  #4  
Alt 29.07.2003, 19:18:10
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
Man wie peinlich!! mod_rewrite wurde gar nicht geladen. :)

Damit klappt's nun:
RewriteEngine on

RewriteCond %{HTTP_HOST} (.*)dbcf.de(.*)

RewriteRule !(flashhasser|dbcf|gsgs|wfst)|.(gif|jpg|png|css|zip|js|htm|log|ico|txt |php)$ /is/htdocs/xxxxx/www.dbcf.de/mod_rewrite.php [L]

RewriteCond %{HTTP_HOST} (.*)meine(.*)
RewriteRule !(meine|flashhasser|dbcf|gsgs|wfst)|.(gif|jpg|png|css|zip|js|htm|log|i co|txt|php)$ /dbcf/mod_rewrite.php [L]
__________________
sic!
--> http://dbCF.de/
Mit Zitat antworten
  #5  
Alt 30.07.2003, 09:27:21
Ben20
Guest
 
Beiträge: n/a
Blöde Frage, aber was macht das ganze eigentlich (aus dem Quellcode werd ich nicht ganz schlau) Soweit ich das entziffer kannst leitest Du die Domains flashhasser, dbcf, gsgs und wfst *g* nach mod_rewrite.php um, richtig?
Mit Zitat antworten
  #6  
Alt 30.07.2003, 09:42:52
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
Also was ich mit diesem regexp ausdrücke frage ich mich auch. Irgendwie klappt es aber. :)
Es heißt wohl soviel, wie "Wenn im URI flashhasser, dbcf, ... nicht vorkommt oder die Dateiendung .gif, .jpg, ... ist, dann gehe weiter zur mod_rewrite.php Das [L] heißt, dass das die letzte Ersetzungsregel ist, die bearbeitet werden soll.
Ach ja, die RewriteCond testet, ob die Bedingung erfüllt ist. Wenn ja, dann wird die nächste Ersetzungsdings ausgeführt. Das war mit der entscheidende Punkt für mein lokal-online-Problem.

In der mod_rewrite.php steht dann bloß das:
PHP-Code:
<?php
if (strstr(strtolower($_SERVER["SERVER_NAME"]),"dbcf.de")) {
    
$server='online';
    
$max=3;
}
else {
    
$server='local';
    
$max=4;
}


$url=explode('/'strip_tags($_SERVER['REQUEST_URI']));
if (
count($url)>$max) {
    if (
$server=='online') {
        
header('Location: http://dbCF.de/');
    }
    else {
        
header('Location: http://meine/dbCF/');
    }
    exit;
}
else {
    
$i=count($url);
    while (
$i>=0) {
        if (
substr($url[$i], 02)=='t_') {
            
$t=substr($url[$i], 2strlen($url[$i]));
            
$subdir=true;
            break;
        }
        
$i--;
    }

    
$mod_rew=true;
    if (
$server=='online') {
        include(
'http://dbCF.de/index.php?subdir='.$subdir.'&topic='.$t);
    }
    else {
        include(
'http://meine/dbcf/index.php?subdir='.$subdir.'&topic='.$t);
    }
    exit;
}
?>
Die Funktweise könnte einleuchtend sein.

Am Ende macht das alles nichts anderes, als das es virtuelle Verzeichnisangaben in umleitet. Also gibst Du z.B. http://dbCF.de/t_riesenrechner/ ein, dann wird man intern an http://dbCF.de/index.php?topic=riesenrechner weitergeleitet. Das hat enorme Vorteile bei der Merkbarkeit (feines Wort) von Links und Suchmaschinen erfreuen sich auch daran.
Was ich auch richtig fein finde ist, dass die alten Links auch weiterhin funktionieren, also gibt es keine toten Links.
__________________
sic!
--> http://dbCF.de/

Geändert von ­c­4­ (30.07.2003 um 09:45:08 Uhr)
Mit Zitat antworten
  #7  
Alt 30.07.2003, 09:45:40
Ben20
Guest
 
Beiträge: n/a
Das ist ja sehr interessant, ich muss mich auch irgendwann mal mit mod_rewrite auseinander setzen, die ? in den Urls loszuwerden wäre schon praktisch! Dank dir!
Mit Zitat antworten
  #8  
Alt 30.07.2003, 09:47:06
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
Kein Problem.
Ist echt enorm, was man mit dieser .htaccess so alles anstellen kann.

Du solltest Dich aber nur dann ran wagen, wenn es egal ist, dass Du die halbe Nacht dafür vorm Rechner hockst.... ;)
__________________
sic!
--> http://dbCF.de/
Mit Zitat antworten
  #9  
Alt 17.08.2003, 20:57:32
Fuchs Fuchs ist offline
Junior Member
 
Registriert seit: Jul 2003
Beiträge: 182
Zitat:
Original geschrieben von _c_4_
Damit klappt's nun:
RewriteEngine on

RewriteCond %{HTTP_HOST} (.*)dbcf.de(.*)
RewriteRule !(flashhasser|dbcf|gsgs|wfst)|.(gif|jpg|png|css|zip|js|htm|log|ico|txt |php)$ /is/htdocs/xxxxx/www.dbcf.de/mod_rewrite.php [L]

RewriteCond %{HTTP_HOST} (.*)meine(.*)
RewriteRule !(meine|flashhasser|dbcf|gsgs|wfst)|.(gif|jpg|png|css|zip|js|htm|log|i co|txt|php)$ /dbcf/mod_rewrite.php [L]
Waere das nicht einfacher:

RewriteEngine on
RewriteRule !(flashhasser|dbcf|gsgs|wfst)|.(gif|jpg|png|css|zip|js|htm|log|ico|txt |php)$ ./mod_rewrite.php [L]

Zitat:
Also was ich mit diesem regexp ausdrücke frage ich mich auch. Irgendwie klappt es aber. :)
Es heißt wohl soviel, wie "Wenn im URI flashhasser, dbcf, ... nicht vorkommt oder die Dateiendung .gif, .jpg, ... ist, dann gehe weiter zur mod_rewrite.php Das [L] heißt, dass das die letzte Ersetzungsregel ist, die bearbeitet werden soll.
Ach ja, die RewriteCond testet, ob die Bedingung erfüllt ist. Wenn ja, dann wird die nächste Ersetzungsdings ausgeführt. Das war mit der entscheidende Punkt für mein lokal-online-Problem.

In der mod_rewrite.php steht dann bloß das:
PHP-Code:
<?php
if (strstr(strtolower($_SERVER["SERVER_NAME"]),"dbcf.de")) {
    
$server='online';
    
$max=3;
}
else {
    
$server='local';
    
$max=4;
}


$url=explode('/'strip_tags($_SERVER['REQUEST_URI']));
if (
count($url)>$max) {
    if (
$server=='online') {
        
header('Location: [url]http://dbCF.de/[/url]');
    }
    else {
        
header('Location: [url]http://meine/dbCF/[/url]');
    }
    exit;
}

Das koennte man auch mit substr_count loesen.

Zitat:
Die Funktweise könnte einleuchtend sein.

Am Ende macht das alles nichts anderes, als das es virtuelle Verzeichnisangaben in umleitet. Also gibst Du z.B. http://dbCF.de/t_riesenrechner/ ein, dann wird man intern an http://dbCF.de/index.php?topic=riesenrechner weitergeleitet. Das hat enorme Vorteile bei der Merkbarkeit (feines Wort) von Links und Suchmaschinen erfreuen sich auch daran.
Was ich auch richtig fein finde ist, dass die alten Links auch weiterhin funktionieren, also gibt es keine toten Links.
[/QUOTE]
Ich wuerd's so machen:
RewriteRule ^t_(.+)/? ./index.php?topic=$1 [last]
Mit Zitat antworten
  #10  
Alt 17.08.2003, 23:01:54
Benutzerbild von Nev
Nev Nev ist offline
Member
 
Registriert seit: Feb 2002
Ort: Österreich / Wien
Alter: 44
Beiträge: 992
Hi @ll

Mod_rewite hat sehr gut eingesetzt werden um Suchmaschinen zu Täuschen.

Fast alle Suchmaschienen, meiden Seite die mit Parameter arbeiten.

Durch mod_rewirte kann man das Ändern.
ZB
domain.com/staubsauger

ist eigendlich
domain.com/index.php?cat=1

die vorgeträuschte Url bleibt im Browser stehn.

Weiter kann man so auch eine leserliche Url erzeugen, bzw. auch Werbung darüber laufen lassen.
__________________
Cu
Nev the XxX (Sven-Marcus Maderbacher)

Master of www.Burnworld.de
www.Nev-hilft.de die Seite für den Coder
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:09:17 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt