PHP htaccess Problem

realmoney

Gesperrt
23 März 2008
900
104
moin :9

hab n kleines problem mit htaccess.

Code:
RewriteEngine on
RewriteBase /
RewriteRule ^([A-Za-z0-9_-]*)_([0-9]*).html?$ index1.php?keys=$1&id=$2 [QSA,L]

funzt einwandfrei.allerdings nur im hauptverzeichnis.leg ich das script das dazu gehört in ein unterverzeichnis funktiniert es nichtmehr richtig.

es werden über eine DB daten abgerufen und als reffer ausgegeben.

mit <?php echo $row[keys]; ?> funktioniert es auch im unterverzeichnis.

mit
Code:
<?
if ($_SERVER['HTTP_REFERER']) {
echo ShowFileName($_SERVER['HTTP_REFERER']);
} else {
echo '"Kein Suchwort eingegeben"';
}  
?>" />
nicht.

ok übers echo wirds direkt aus der DB geholt allerdings funzt das nicht wenn ichs so übernehme in die datei wo es ausgegeben werden soll.

der letzt genannte code funktioniert aber einwandfrei.
allerdings nur unter www.domain.de unter www.domain.de/ordner nichtmehr.
unter domain.de/ordner krieg ich als reffer immer nur "ordner" angezeigt anstatt dem suchwort.
ich denke es kann nur noch an der htaccess liegen (die auch in dem ordner ist) aber ich weiss nicht wie ich die umschreiben kann damit der unterordner mit einbezogen wird und der richtige reffer ausgegeben wird.
 
Guck dir deine RewriteRule halt mal an: Sobald ein Slash drin is, matcht die freilich nicht mehr ;)
 
Guck dir deine RewriteRule halt mal an: Sobald ein Slash drin is, matcht die freilich nicht mehr ;)

welchen slash meinst du?

RewriteEngine on
RewriteBase /
RewriteRule ^([A-Za-z0-9_-]*)_([0-9]*).html?$ index1.php?keys=$1&id=$2 [QSA,L]

Meinst du die rewriteBase?

Muss ja denn sonst is ja kein Slash da *g*

Aaaaber nehm ich den raus kommt das

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, [no address given] and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

Ich verstehs einfach nicht...warum geht das nicht in nem unterordner :(
Ich weiss einfach nicht wie ich es abändern muss das es in jedem Verzeichnis geht...
 
Na den:
Code:
www.domain.de[B][COLOR=Red]/[/COLOR][/B]ordner

P.S. Du hast da noch irgendeine andere .htaccess-Regel oder so, da wenn ich www.domain.de/ordner aufrufe, werde ich auf https://www.domain.de/domainsuche/domainsuchergebnis.php?woher=url&domainname=ordner.de umgeleitet.

Oh thehacker...
Das domain.de war nur als beispieldomain :ugly:
Es ist natürlich ne andere Domain.

Aber was hat der / damit zu tun?in dem Ordner liegt ja die htaccess also müsste der doch irrelevant sein da die htaccess ja auf den Ordner bezogen ist.
 
Das domain.de war nur als beispieldomain :ugly:
Es ist natürlich ne andere Domain.
Also ein Regelverstoß?! 8O
Wenn dir die Domain domain.de nicht gehört, dann stell das bitte auch nicht in deinen Posting so dar, sondern verwende die vorgeschrieben Domains, die eben zu diesem Zweck existieren.
Aber was hat der / damit zu tun?
Der sorgt dafür, dass die RewriteRule nicht matcht.

Ich bin zwar nicht der .htaccess-Profi, aber n regulären Ausdruck kann ich noch lesen ;) Probiers einfach aus, lass den Slash zu und prüfe, ob ich recht hab oder mich irre.
 
Ahh ok hätte example.com nehmen sollen.

Ok dann werd ich mal versuchen den slash nicht auszuschliessen.Seh bloss nicht wo.
Seh nur das das Script zahlen und Buchstaben ausschliesst (und den -)
 
Das schließt nicht aus, das bezieht ein:ugly:

Naja ist ja auch irrelevant jetzt.Jedenfalls hatte es nicht funktioniert mit dem einbeziehen.Hatte sich nix geändert.
Hab es nun anders gelöst.
Die htaccess und die index1.php liegen im hauptverzeichnis und der Rest in anderen ordnern und nun läuft es :)
 
Also wenn ich Dein Problem richtig verstanden habe und es vorher auf examble.com ging dann entfernen einfach das ^ am Anfang der Rule und es sollte auch in Unterordnern funktionieren. Oder denk ich falsch. :-?

*edit
Und den Pfad zur index auch anpassen.