Re: [Lug-bg] Apache2.2, mod_rewrite, content type
- Subject: Re: [Lug-bg] Apache2.2, mod_rewrite, content type
- From: Damyan Ivanov <dam+lug@xxxxxxxx>
- Date: Tue, 17 Aug 2010 15:22:04 +0300
- Mail-followup-to: Damyan Ivanov <dam+lug@xxxxxxxx>, lug-bg@xxxxxxxxxxxxxxxxxx
-=| Boris Grozev, Tue, Aug 17, 2010 at 02:46:40PM +0300 |=-
> Опитвам се да накарам mod_rewrite да сетва определен mime type на
> някои правила. Проблема е, че apache продължава да връща
> подразбиращия се Content-Type. По-подробно:
mod_rewrite е най-изтънчена черна магия :)
> Имам директория 'rwtest' и файл 'rwtest/1' със съдържание 'bla'. Имам
> следните правила за mod_rewrite:
> RewriteEngine On
> RewriteRule 1.jpg 1 [type=image/jpeg]
>
> Очаквам, заявките за 1.jpg да се връщат с Content-Type:image/jpeg. Но
> резултата е следния:
> $ nc localhost 80
> GET /rwtest/1.jpg HTTP/1.1
> Host:classalc.com
>
> HTTP/1.1 200 OK
> Date: Tue, 17 Aug 2010 11:31:20 GMT
> Server: Apache
> Last-Modified: Tue, 17 Aug 2010 11:11:26 GMT
> ETag: "8e61-4-48e030291d380"
> Accept-Ranges: bytes
> Content-Length: 4
> Content-Type: text/plain
>
> Това text/plain идва от DefaultType в httpd.conf -- ако го променя се
> променя и отговора.
>
> Системата работи със apache от пакетите на debian и няма промени по
> apache2.conf. Rewrite правилата са в .htaccess файл, и на директорията
> е дадено AllowOverride all.
>
> Целта на заниманието е в директорията да се съхраняват файлове без
> разширения в имената, но да могат да се връщат със съответен
> Content-Type ако в запитването има разширение. Използването на php или
> някакъви cgi скриптове е силно нежелателно.
>
> Ще съм благодарен за всякаки решения на проблема или насоки.
В документацията пише
(http://httpd.apache.org/docs/2.2/rewrite/rewrite_flags.html)
If used in per-directory context, use only - (dash) as the
substitution for the entire round of mod_rewrite processing,
otherwise the MIME-type set with this flag is lost due to an
internal re-processing (including subsequent rounds of mod_rewrite
processing). The L flag can be useful in this context to end the
current round of mod_rewrite processing.
Помага ли ако добавиш „L“ към флаговете?
RewriteRule 1.jpg 1 [type=image/jpeg,last]
Attachment:
signature.asc
Description: Digital signature
_______________________________________________
Lug-bg mailing list
Lug-bg@xxxxxxxxxxxxxxxxxx
http://linux-bulgaria.org/mailman/listinfo/lug-bg
|