.htaccess Отключение дефтата для одного конкретного файла PHP

StackOverflow https://stackoverflow.com/questions/4537569

Вопрос

Мы сдаем файлы PHP для сжатия, производительности и т. Д.

Синтаксис файла .htaccess выглядит так:

<Files *.php>
     SetOutputFilter DEFLATE
</Files>

Теперь у нас есть один файл getsong.php, который в основном обслуживает mp3. Я не хочу, чтобы этот файл был раздут, потому что у нашего Flash Mp3-плееры, кажется, есть проблемы с некомпрессией обслуживаемого MP3 и не дает правильной продолжительности воспроизведения файла MP3 и т. Д.

Как быстро, я хотел бы изменить это <files> Директива, чтобы это исключало getsong.php. Я пробовал различные регулярные выражения, но плохо потерпел неудачу. Можете ли вы, пожалуйста, сказать мне, как написать регулярное выражение для этого в директиве файлов или я должен использовать файлы?

Любые другие идеи о том, как решить эту проблему, также приветствуются :)

Это было полезно?

Решение

Я ожидаю, что что -то подобное будет работать:

<Files *.php>
     SetOutputFilter DEFLATE
</Files>
<Files youronefile.php>
     SetOutputFilter NONE (or something)
</Files>

Если это не работает, не забудьте использовать <FilesMatch> с вашим регулярным выражением :)

Другие советы

Попробуйте это для вашего .htaccess:

<FilesMatch "(.*[^getsong])\.php">
SetOutputFilter DEFLATE
</FilesMatch>

Я предполагаю, что вы используете Apache> = 1.3

// РЕДАКТИРОВАТЬ:
Просто сделал это неправильно :): с.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top