nginx 0.7.65 переписывают не работу для двойных наклонных черт?

Попытайтесь проверить свою политику локальной защиты выполненный secpol.msc-> Локальные политики-> Доступ к сети-> Совместное использование и модель обеспечения безопасности для локальной учетной записи. Это должно быть установлено на классический.

2
задан 9 March 2011 в 23:00
2 ответа

Ваш regex, казалось, был неправильным, поскольку существует только 2 группы фиксации. Попробуйте это:

(.+)//(image.jpg) $1/300/$2

Я также сделал * +, поскольку Вы, вероятно, хотите, чтобы что-то было перед наклонными чертами.

0
ответ дан 3 December 2019 в 12:11

Причина в том, что модуль перезаписи автоматически обрезает косую черту при синтаксическом анализе запроса. Если вы посмотрите журнал ошибок, вы увидите что-то вроде этого:

[примечание] 5883 # 0: 1 "(. +) // (image.jpg)" не совпадает "/uploads] image.jpg", клиент: 127.0.0.1 , server: localhost, request: «GET /uploads//[114789 visibleimage.jpg HTTP / 1.1», host: «localhost»

Однако вы можете использовать переменную $ request_uri для сохранить исходный URI запроса в том виде, в каком он был получен от клиента:

    location ~* \.jpg {
        if ($request_uri ~ "(.+)\/\/(.+\.jpg)") {
            set $folder_uri $1;
            set $file_uri $2;
            rewrite .* $folder_uri/300/$file_uri permanent;
        }
    }
2
ответ дан 3 December 2019 в 12:11

Теги

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