Apache RewriteCond не соответствует `REQUEST_FILENAME`, хотя файл существует?

POSIXly:

od -An -vtu1 < file > file.encoded

Где каждый и vкаждый байт файла кодируется как uдесятичное число без знака с nили Aадресом.

Для декодирования с некоторыми awkреализациями (такими, как gawkили mawk, где printf("%c", 0)работает):

awk '{for (i = 1; i <= NF; i++) printf "%c", $i}' < file.encoded > file

Несколько замечаний о том, почему ваш подход не работает:

  • оболочки, отличные от zsh, не могут хранить произвольные данные (, особенно байт NUL )в своей переменной.
  • и подстановка команд в Bourne -, как оболочки, разделяет символы новой строки в конце (0xa байт на большинстве систем)
  • вам нужно заключать в кавычки переменные в Bourne -, как оболочки, отличные отzsh
  • В оболочках с оператором${var:offset:length}ksh93(ksh93, bash, zsh, mksh), offsetи lengthвыражаются в количестве символов, а не в байтах (UTF -8 однако является единственной многобайтовой -кодировкой символов, поддерживаемой mkshи только при включенной опции utf8-mode).
  • printf %d \'xвозвращает номер кода символа.Это только значение байта в однобайтовых наборах символов -. Здесь вы, вероятно, используете bashи находитесь в локали, использующей кодировку UTF -8, посколькуbashprintfдает случайные значения для байтов, не являющихся частью допустимых символов там .
  • текст определяется как последовательность текстовых строк, которые сами по себе являются последовательностями не -NUL символов (, поэтому ограничены последовательностями байтов, образующими допустимые символы ), длина которых (в количестве байты , включая символ новой строки ), не превышают LINE_MAX(, см.getconf LINE_MAX)и разделяются символом новой строки. Таким образом, за исключением очень маленьких файлов jpg, ваш sai.outв конечном итоге не будет действительным текстом, и у вас не будет никакой гарантии, что он будет нормально обработан текстовыми утилитами.(odздесь выводит только несколько чисел в строке ).

0
20.11.2019, 19:36
1 ответ

https://serverfault.com/questions/78125/mod-rewrite-request-filename-doesnt-contain-absolute-path

REQUEST_FILENAMEкажется, возвращает другое значение, В ЗАВИСИМОСТИ ОТ ЕГО ИЛИ НЕТ В ApaChe ConFig ORRRR an .htaccess...

0
28.01.2020, 03:05

Теги

Похожие вопросы