rewrite в nginx

Тема в разделе "Веб-технологии", создана пользователем HooLIGUN, 25 дек 2014.

  1. HooLIGUN

    HooLIGUN

    Сообщения:
    748
    Симпатии:
    124
    Доброй ночи!
    Такой вопрос.
    Имеется файл city.php с таким кодом:
    Код:
    <?php 
    $city=$_GET['city']; 
    return header('Location: https://www.google.ru/maps?q='.$city.''); 
    ?>
    
    При переходе по ссылке site.ru/city.php?city=Москва
    Должно перекинуть на ссылку www.google.ru/maps?q=Москва
     
    Использую rewrite в nginx для изменения ссылки, делаю вид (рабочая)
    www.rgmix.eu/city/Москва
    А открывается 
    www.google.ru/maps?q=/city/Москва , что ни есть хорошо (работает, но так не нужно)
    Сам файл расположен по адресу www.rgmix.eu/plugins/city.php?city=Москва ,и при переходе по этой ссылке открывает как надо.
     
    Правило реврайта следующее:
    Код:
    location /city/ {
    rewrite (.*) /plugins/city.php?city=$1;
    }
    
    Кто нибудь знает,как убрать из get запроса /city/ ?
     
  2. Vaio

    Vaio

    Сообщения:
    628
    Симпатии:
    218
    PHP:
    <?php 
    $city 
    substr($_GET['city'], 6); 
    return 
    header('Location: https://www.google.ru/maps?q='.$city.''); 
    Костыль :victory:

    P.S. Немного смущает конткатинация пустой строки:
    Код:
    return header('Location: https://www.google.ru/maps?q='.$city[B][COLOR="Red"].''[/COLOR][/B]);
    Но наверно так должно быть :)
     
    Danyas и HooLIGUN нравится это.
  3. HooLIGUN

    HooLIGUN

    Сообщения:
    748
    Симпатии:
    124
    Спасибо,костыль помог, а про ' ' незнаю почему, но без этого не работает :dntknw:
     
  4. Хитрый_Ёжик

    Хитрый_Ёжик

    Сообщения:
    281
    Симпатии:
    94
    HooLIGUN нравится это.
  5. Vaio

    Vaio

    Сообщения:
    628
    Симпатии:
    218
    Ошибочку можно? :blush2:
     
  6. HooLIGUN

    HooLIGUN

    Сообщения:
    748
    Симпатии:
    124
    Так?)
    Код:
    header("Location: https://www.google.ru/maps?q=$city");
     
  7. Vaio

    Vaio

    Сообщения:
    628
    Симпатии:
    218
    PHP:
    return header('Location: https://www.google.ru/maps?q=' $city);
     
    HooLIGUN нравится это.