nach Rewrite wird css Datei nicht gefunden
Petra
- programmiertechnik
0 Baba0 Petra
0 Gunnar Bittersmann
Hi,
ich leite eine url: example.com/foo/bar.html auf example.com/fooBar.html um
RewriteRule ^foo/bar.html$ fooBar.html
Beim Aufruf von example.com/foo/bar.html wird nun zwar example.com/fooBar.html angezeigt, nicht aber die darin verlinkten css. Diese liegen unter example.com/css/c.css und werden (so im error_log zusehen) unter example.com/foo/css/c.css aufgerufen.
Wie macht man die Weiterleitung einer Seite inkl. aller Ressourcen in eine höhere Verzeichnisebene richtig?
LG
Petra
Beim Aufruf von example.com/foo/bar.html wird nun zwar example.com/fooBar.html angezeigt, nicht aber die darin verlinkten css. Diese liegen unter example.com/css/c.css und werden (so im error_log zusehen) unter example.com/foo/css/c.css aufgerufen.
An der Rewrite Rule liegts wohl nicht. Wahrscheinlich verlinkst Du die CSS file im html dokument _relativ_.
<link rel="stylesheet" type="text/css" href="./css/c.css"/>
oder
<link rel="stylesheet" type="text/css" href="css/c.css"/>
statt absolut:
<link rel="stylesheet" type="text/css" href="/css/c.css" title="SELFHTML Forum Stylesheet" />
Gib mal example.com/css/c.css als url ein. Was kommt da?
Cheers,
Baba
Wahrscheinlich verlinkst Du die CSS file im html dokument _relativ_.
Ja, das war es. Danke.
@@Petra:
nuqneH
ich leite eine url: example.com/foo/bar.html auf example.com/fooBar.html um
lang=html? Für die Auszeichnung als Apache-Code gibt es eine entsprechende Angabe – samt Button über dem Eingabefeld.
[code lang=apache]
RewriteRule ^foo/bar.html$ fooBar.html
[When not to use mod_rewrite](http://httpd.apache.org/docs/2.4/rewrite/avoid.html)
`Redirect`{:.language-apache} sollte es in deinem Fall tun.
Qapla'
--
„Talente finden Lösungen, Genies entdecken Probleme.“ (Hans Krailsheimer)