Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Apache Mod_rewrite 
:(
    Опции темы
alligator
Дата 19.2.2005, 05:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 28.1.2004

Репутация: нет
Всего: 1



Нашел статью Mal Hack`a ,очень понравилась статейка....http://wboard.ru/topic29.html
Настроил всё у себя на сервере.Но появилась проблемка хотел спросить.
у ссылки сделаны типа <A href="?go=news">&nbsp;News</A>
они как бы не изменились но если делать запрос вручную потипу
http://localhost/news/ то работает
Хочу спросить как правильно обрабатывать ссылки скриптом...или как правильно делать ссылки.

Это сообщение отредактировал(а) alligator - 19.2.2005, 05:03
PM MAIL   Вверх
Irokez
Дата 19.2.2005, 12:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


Профиль
Группа: Участник Клуба
Сообщений: 1180
Регистрация: 20.10.2004

Репутация: 1
Всего: 53



mod_rewrite не ссылки обрабатывает, а запросы, т.е. пишешь www.dom.en/go/ и попадаешь на www.dom.en/?p=go а сами ссылки прописываешь уже сам
PM   Вверх
Guest
Дата 19.2.2005, 13:28 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата(Irokez @ 19.2.2005, 12:38)
mod_rewrite не ссылки обрабатывает, а запросы, т.е. пишешь www.dom.en/go/ и попадаешь на www.dom.en/?p=go а сами ссылки прописываешь уже сам

дык ссылки у меня так и прописаны ?go=news токо када в меню переключаешься в строке браузера ничего не меняеться (
  Вверх
alligator
Дата 19.2.2005, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 28.1.2004

Репутация: нет
Всего: 1



Так и остаёться http://127.0.0.1/index.phtml?go=news
PM MAIL   Вверх
alligator
Дата 19.2.2005, 14:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 28.1.2004

Репутация: нет
Всего: 1



У меня сделана обработка ссылок вот так...
Код

if(!$go){ $go = $_REQUEST['go']; }

if($go=="" or $go=="news"){
$number = "20";
include("news.php");
}elseif($go=="html"){
include("html.php");
}elseif($go=="text"){
include("text.php");
}elseif($go=="conf"){
include("config.php");
}elseif($go=="archives"){
include("show_archives.php");
}elseif($go=="search"){
include("search.php");
}elseif($go=="admin"){
include("admin.php");
}

Я хочу переделать под rewrite или это конечно нужно....
PM MAIL   Вверх
Mal Hack
Дата 19.2.2005, 14:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 15
Всего: 261



написал на свою голову, теперь отдуваться smile Шучу, конечно.
Фишка в том, что многие не понимают что делает mod_rewrite.

alligator вот ты набираешь в браузере YYY/news/ это - GET запрос, он приходит на веб-сервер. Дальше, если включен механизм преобразования адресов (mod_rewrite), он согласно правилам и условиям которые ты в нем прописал, перехватывают этот запрос YYY/news/ и преобразовывают его в другой запрос, который уже и идет к тебе на скрипт. Новый запрос ты не увидишь, как правило. Это делается неявно. При указании [QSA], у тебя параметры от старого запроса (/news/) пойдут в новом, как $_SERVER['REQUEST_URI'].
В скрипте тебе уже надо "разбирать" эту переменную и юзать дальше ее разбивку. Выведи в скрипте ее, дальше думаю все поймешь.

Что касается ссылок, то ты их сам должен менять на /news/ или /search/ и т.д. mod_rewrite этого не делает.
PM ICQ   Вверх
alligator
Дата 19.2.2005, 16:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 28.1.2004

Репутация: нет
Всего: 1



Вот именно это Я и хотел узнать спасибо буду разбираться.... просто я почитал твои статью это как раз то что мне нужно.... спасибо респект тебе
PM MAIL   Вверх
alligator
Дата 20.2.2005, 04:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 28.1.2004

Репутация: нет
Всего: 1



У меня такая проблемка я хочу сделать ссылки потипу как папки ...
ща сделано просто http://127.0.0.1/news
но если вбиваю в строку http://127.0.0.1/news/
перестают грузиться картинки и css стили посмотрел логи
в логах они грузяться из
http://127.0.0.1/<раздел сайта>/style.css
http://127.0.0.1/<раздел сайта>/images/someimage.jpg

Это сообщение отредактировал(а) alligator - 20.2.2005, 04:13
PM MAIL   Вверх
Mal Hack
Дата 20.2.2005, 13:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 15
Всего: 261



Надо в скрипт вписывать тэг <base> с УРЛом http://127.0.0.1/
PM ICQ   Вверх
alligator
Дата 20.2.2005, 14:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 28.1.2004

Репутация: нет
Всего: 1



Во работатет спасибо!
PM MAIL   Вверх
alligator
Дата 21.2.2005, 03:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 28.1.2004

Репутация: нет
Всего: 1



Еще вопросик )
када прописал <base href="http://127.0.0.1/"> стало всё норм.. но столкнулся с такой проблемой
при переходе в http://127.0.0.1/admin/ всё норм инклюдиться файлик admin.php в если я в меню делаю ссылку типа http://127.0.0.1/admin/add/ то опять снова непашет ( а должен поидее инклюдиться файлик add.php в admin.php ...хочеться сделать уж больно понравились мне такие ссылки... smile smile

PM MAIL   Вверх
Mal Hack
Дата 21.2.2005, 08:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 15
Всего: 261



На подключение файло это не влияет. не должно по крайней мере.
Напиши код подключения и где файлы лежат.
Код реврайта тоже.
PM ICQ   Вверх
alligator
Дата 21.2.2005, 14:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 28.1.2004

Репутация: нет
Всего: 1



Цитата(Mal @ 21.2.2005, 08:16)
На подключение файло это не влияет. не должно по крайней мере.
Напиши код подключения и где файлы лежат.
Код реврайта тоже.

Незнаю как описать проблему дык что сделаю вот так:
http://217.10.32.247/
admin
3838
Раздел админ
admin.php
Код

<?
if($_SERVER['REQUEST_URI'] == "/admin/add/"){
include("add.php");}
?>


Все файле лежат в корне сайта кроме картинок.
код реврайта
Код

RewriteEngine on
Options +FollowSymlinks
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.phtml [L,QSA]


Это сообщение отредактировал(а) alligator - 21.2.2005, 14:43
PM MAIL   Вверх
Mal Hack
Дата 21.2.2005, 16:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 15
Всего: 261



Цитата(alligator @ 21.2.2005, 14:41)
    if($_SERVER['REQUEST_URI'] == "/admin/add/"){

Нельзя так делать...
Надо разбивать по / и потом смотреть по параметрам.
Не забывайй, что /admin/////////////////////////////////////////add////// Один и тот же физический путь с /admin/add/, но REQUEST_URI будет разный.
PM ICQ   Вверх
alligator
Дата 21.2.2005, 16:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 28.1.2004

Репутация: нет
Всего: 1



если через explode делать нормально будет ?
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Администрирование Web серверов и Web служб | Следующая тема »


 




[ Время генерации скрипта: 0.0853 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.