Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Реализация запроса вида www.site.ru/12345
 
 автор: Pit0n   (22.07.2007 в 12:53)   письмо автору
 
 

Не могу сообразить каким образом осуществляется запрос вида www.site.ru/12345 , имеется ввиду не переход на страницу "12345", а "12345" в виде входящего параметра для скрипта. Тоже что www.site.ru/?id=12345, только вида www.site.ru/12345.

   
 
 автор: bronenos   (22.07.2007 в 12:56)   письмо автору
 
   для: Pit0n   (22.07.2007 в 12:53)
 

RewriteRule - ветка Apache

   
 
 автор: Pit0n   (22.07.2007 в 13:00)   письмо автору
 
   для: bronenos   (22.07.2007 в 12:56)
 

т.е. данные запросы обрабатываются уже непосредственно apache, а как например формируются динамические страницы с произвольными символами например www.site.ru/news/12345.php

   
 
 автор: kasmanaft   (22.07.2007 в 13:26)   письмо автору
 
   для: Pit0n   (22.07.2007 в 13:00)
 

Какие такие произвольные символы? : )
Попробуйте поиск по словам RewriteRule или mod_rewrite

   
 
 автор: marcus   (22.07.2007 в 13:54)   письмо автору
 
   для: Pit0n   (22.07.2007 в 12:53)
 

создаете apache - файлик. Там идет наследование, поэтому например в корне контента веб ресурса создаете юниксовый фалик .htaccess

там пишите (например):

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

вот и все, а потом в самом скрипте index.php адресную строчку распознаете строчку. Делите ее по "/" и используете как обычный GET

   
 
 автор: Pit0n   (22.07.2007 в 19:44)   письмо автору
 
   для: marcus   (22.07.2007 в 13:54)
 

Спасибо за ответ. Еще я имел ввиду например, как сделано на секлабе( http://www.securitylab.ru/) где каждая новость размещена на отдельной странице, т.е. по порядку (http://www.securitylab.ru/news/299855.php, http://www.securitylab.ru/news/299856.php итд.) Каким образом реализуются данные страницы?

   
 
 автор: kasmanaft   (22.07.2007 в 21:28)   письмо автору
 
   для: Pit0n   (22.07.2007 в 19:44)
 

А всё-таки Вы сходите в поиск :D
Это, видимо, мод_реврайт.. Без него адрес выглядел бы например так:
http://www.securitylab.ru/index.php?mode=news&id=299856

   
 
 автор: marcus   (22.07.2007 в 21:29)   письмо автору
 
   для: Pit0n   (22.07.2007 в 19:44)
 

ну, не знаю как именно программеры там все это сделали, но судя по всему так:

при создании новой новости создается динамически новый php файлик с именем порядкового id новости и сохраняется на сервере - своего рода кэш готовый - не надо при каждом запросе динамически создавать страничку с этой новостью - просто прочитать и все. Ну, а для нормального управления всеми новостями, заносят инфу в таблицу БД. Если бы я делал по такой схеме новостную ленту, то не использовал бы .htaccess

   
 
 автор: CrazyAngel   (23.07.2007 в 07:05)   письмо автору
 
   для: marcus   (22.07.2007 в 21:29)
 

программеры так не делают, это не тру

   
 
 автор: marcus   (23.07.2007 в 17:20)   письмо автору
 
   для: CrazyAngel   (23.07.2007 в 07:05)
 

поэтому и написал - не знаю как именно :)

   
 
 автор: bronenos   (23.07.2007 в 08:24)   письмо автору
 
   для: marcus   (22.07.2007 в 21:29)
 

это делается с помощью mod rewrite, rewrite rule
покажите мне такого идиота который будет динамически создавать страницу

   
 
 автор: marcus   (23.07.2007 в 17:18)   письмо автору
 
   для: bronenos   (23.07.2007 в 08:24)
 

если кто-то так и делает - значит это имеет место быть и это не означает, что человек этот идиот (камень в Ваш огород).
Все способы хороши, я только дал догадку, возможно и не самую производительную в определенном смысле.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования