Обработка переменных в URL

Desh

Новичок
Обработка переменных в URL

Здравствуйте!
Пожалуйста, помогите решить следующую ситуацию!

Есть сайт, например http://mysite.ru/
На нём существует файл file.php которому также через браузер передаются переменные x и y, следовательно, чтобы его вызвать, пользователю необходимо набрать в адресной строке http://mysite.ru/file.php?x=1&y=2

Проблема в том, чтобы оставить всё как есть, но убрать расширение .php! Тоесть чтобы URL выглядел так: http://mysite.ru/file?x=1&y=2

Если использовать mod_rewrite, то переменные которые идут после знака вопроса, файл file.php не воспримет! Хотя я могу ошибаться, если кто знает выход, помогите пожалуйста! =)
 

Desh

Новичок
Если не сложно, покажите готовый пример! Послезавтра проект сдавать, а у меня ещё ничего не сделано по этой части =(
 

Desh

Новичок
Да, и естественно, необходимо чтобы было как обычно - если нет странички str.php то выдавалась ошибка 404, и т.д. а не главная!

Слышал что подобное можно осуществить через CGI... Есть примеры?
 

zap

Guest
по поводу первого вопроса, можно сделать еще так:

http://mysite.ru/?x=1&y1

но тогда нужно будет принимать эти переменные в index файле
 

Desh

Новичок
zap, нет, это немножко нето! То о чём ты написал, это и вправду обычное обращение к index.php

Вот смотри, например будут страницы

http://mysite.ru/file?x=1&y1
http://mysite.ru/str
http://mysite.ru/test?x=1&y1

И как тут быть? Вопрос в том, чтобы убрать расширение, а в остальном всё должно работать как и с ним!

Фанат спасиба! Вот попробовал следующее:

Action throw /index.php

<FilesMatch "^([^.]+)$">
ForceType throw
</FilesMatch>

<FilesMatch index.php>
ForceType application/x-httpd-php
</FilesMatch>
<FilesMatch file.php>
ForceType application/x-httpd-php
</FilesMatch>

Итог получается как нильзя к месту! Но, если вместо http://mysite.ru/test?x=1&y1 (Прописанного в .htacces) набрать http://mysite.ru/str (Не прописанного) то возвращается главная страница, а не 404 ошибка!

Чем не удобен этот вариант? Тем, что для каждой страницы необходимо прописывать строчку в .htaccess

Может я чтото неправильно делаю? Поправь пожалуйста =)
 

Фанат

oncle terrible
Команда форума
для начала объясни, чем тебе так не угодило расширение?
ты первый, кому понадобилось от него избавиться.
поэтому прежде, чем что-то отвечать, надо понять, зачем тебе это
 

Desh

Новичок
Опа нашёл решение одно... разбор URL по средству $REDIRECT_URL... вопрос один, говорят что пользователи программным способом могут отключить определение их $REDIRECT_URL, если это так, то полная лажа... если нет, то топик можно закрыть.

Если использовать $REQUEST_URL, то он выводит не только ввёдённое имя файла, но и все переменные введённые вместе с ним в браузер!

-~{}~ 10.07.05 09:52:

to Фанат, меня попросили вот так сделать, ИМЕННО ТАК! Сам пытался задать заказчикам этот вопрос, на него мне мой тех. директор шёпотом ответил "Хочеш кушать хлеб со смаслом, делай чего от тебя требуют..." и всё! =(((
 

Фанат

oncle terrible
Команда форума
ага.
поправь меня, если я ошибаюсь.
ты хочешь кушать хлеб с маслом.
Но не хочешь читать доки.
А я получаюсь что-то вроде официанта - подтаскивать тебе этот хлеб с маслом в виде готового кода. так?
 

Desh

Новичок
Фанат, господи да нет вовсе, я прочёл, сделал выводы и тебе вот описал что я нашёл!

Кстати, что там с вопросом о $REDIRECT_URL?
 

Desh

Новичок
Фанат, ОГРОМНОЕ, большое такое тебе спасибо, за то что подтолкнул меня документацию читать, всё я вроде сделал как надо было! С меня пиво ;)

З.Ы. - За ссылочки спасибо =)
 

nikit87

Новичок
А меня удивляет то, что человек который не может разобраться с преобразованием url с помощью мод_реврайт как то умудряется работать кодером. Да еще и в фирме какой-то.
 

Desh

Новичок
nikit87 на самом деле я не кодер, просто так получилось что один программер умер четыре дня назад (Попал в автокатастрофу, Лёша, пусть земля тебе будет пухом...), замену сейчас подыскиваем, а так как я имею кое какие навыки в этой области, и есть куча срочных заказов, всё повешено на меня... Вот так... =(((
 

Desh

Новичок
nikit87, благодарю! Сейчас вроде с проблемой которой выше описал разобрался, и спокойнее стало..., можно дальше ехать что называется... =)
 

DiTHER

bang bang
Автор оригинала: nikit87
А меня удивляет то, что человек который не может разобраться с преобразованием url с помощью мод_реврайт как то умудряется работать кодером. Да еще и в фирме какой-то.
мод реврайт это что мана небесная? :)
 
Сверху