Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

Merkwürdiges mit Apache-Rewrite: Datei = Verzeichnis?

Ajax, Hijax, Microformats, RDF, Markup, HTML, PHP, CSS, MySQL, htaccess, robots.txt, CGI, Java, Javascript usw.
Neues Thema Antworten
mcchaos
PostRank 9
PostRank 9
Beiträge: 1414
Registriert: 27.07.2004, 19:18

Beitrag von mcchaos » 01.02.2006, 11:47

Hallo!

Ich möchte per .htaccess gerne eine eigene Fehlerseite ausgeben, wenn eine Datei oder ein Verzeichnis nicht existiert:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /notfound.php4 [L]

Das funktioniert auch:
https://www.meinedomain.de/dasgibtsnicht/asdqewqe.php4
-> Fehlerseite

Komisches passiert aber, wenn ich in dem Pfad eine Datei habe, die existiert. Beispiel:
https://www.meinedomain.de/index/asdqewqe.php4
(/index.php4 existiert, aber /index/ existiert nicht).

Dann gibt Apache (1.3.29) im Browser aus: "No input file specified." statt der Fehlerseite. Des weiteren erscheint im Rewrite-Log:

Code: Alles auswählen

(3) [per-dir e:/documentroot/] add path-info postfix: e:/documentroot/index.php4 -> e:/documentroot/index.php4/asdqewqe.php4
(3) [per-dir e:/documentroot/] strip per-dir prefix: e:/documentroot/index.php4/asdqewqe.php4 -> index.php4/asdqewqe.php4
(3) [per-dir e:/documentroot/] applying pattern '^(.*)$' to uri 'index.php4/asdqewqe.php4'
(4) RewriteCond: input='e:/documentroot/index.php4' pattern='!-f' => not-matched
(1) [per-dir e:/documentroot/] pass through e:/documentroot/index.php4
Wobei die 1. Zeile mehr als merkwürdig ist:
e:/documentroot/index.php4/asdqewqe.php4

Kann mir das jemand erklären und wie erreiche ich, dass auch bei Eingabe von https://www.meinedomain.de/index/asdqewqe.php4 meine Fehlerseite kommt?

Viele Grüße

mcchaos

Anzeige von ABAKUS

von Anzeige von ABAKUS »

SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Caterham
PostRank 5
PostRank 5
Beiträge: 329
Registriert: 20.09.2004, 19:12

Beitrag von Caterham » 01.02.2006, 18:17

Multiviews abschalten

Code: Alles auswählen

Options -MultiVews
oder (was effizienter wäre) die rewriteRules im per-server context notieren. Dann dürfte keine interaktion mit mod_mime/mod_negoation stattfinden.

mcchaos
PostRank 9
PostRank 9
Beiträge: 1414
Registriert: 27.07.2004, 19:18

Beitrag von mcchaos » 02.02.2006, 09:53

Hi Caterham,

danke für Deine Antwort! Ich vermute, mit "per-server context" meinst Du: Änderung der httpd.conf, auf die leider keinen Zugriff habe (Hosting).


Das andere produziert leider einen 500er (Internal Server Error), da google ich mich jetzt mal durch.

*added* Das Options -MultiViews geht natürlich, ich hatte nur per Copy+Paste Deinen Typo übernommen :oops:

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag