Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Переформатирование адресной строки, изменить путь к странице 
V
    Опции темы
AGENTxXx
  Дата 10.4.2012, 21:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Добрый вечер! 
Не совсем нашел нужный раздел, но думаю тут более подходящий раздел.
Задача в следующем: хочу сделать так: www.site.ru/articles/stranica/, а сейчас следующим образом: www.site.ru/articles.php?name=stranica. 
Общий принцип построения: есть страница articles.php, где просто подключается нужная страница через require, но хотелось бы чтобы адрес соответствовал имени статьи. Вычитал по данному поводу, что данный способ дает положение выше в поисковиках.

Надеюсь правильно объяснил!

Я так думаю, что наверное что то нужно делать с файлом .htaccess... Хотя если честно - я не знаю как это вообще сделать...
Или хотя бы ссылочку киньте как это можно сделать.

Всем большое спасибо! =)
PM MAIL   Вверх
Aliance
Дата 11.4.2012, 09:52 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 14
Всего: 137



Нужно использовать mod_rewrite. В файле .htaccess пишем что-то типа такого:
Код

RewriteEngine On
RewriteBase /
RewriteRule articles/([a-z0-9_-]+)([\/]{0,1})$ articles.php?name=$1 [L]
RewriteRule articles.php - [F]

PM MAIL WWW ICQ Skype   Вверх
AGENTxXx
Дата 20.4.2012, 11:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Что - то не получается у меня((( Может кто-нибудь ссылку скинуть где нормально это описано, или хотя бы логику объяснить действий...А именно [L], [F] что это такое?


Давайте лучше сразу пример конкретный приведу на крайний случай:

Сейчас у меня так: site.ru/articles.php?sec=43&razd=50&name=utochnenie_kraya

А мне бы хотелось чтобы выглядело это так:
site.ru/articles/utochnenie_kraya/

Ну я вот думаю должно быть что-то вроде следующего:

RewriteEngine On
RewriteBase /
RewriteRule articles.php?([a-z0-9_-]+)([\/]{0,1})name=(.*)$ articles/$3/ [L]

Но, когда я пишу name, то все, уже ни куда не переводится...

Это сообщение отредактировал(а) AGENTxXx - 20.4.2012, 12:23
PM MAIL   Вверх
Sanchezzz
Дата 21.4.2012, 13:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1670
Регистрация: 19.11.2006
Где: Voronezh

Репутация: 41
Всего: 60



Код

#site.dew/articles/<шаблон>/
RewriteCond %{REQUEST_URI} ^/articles/([a-zA-Z0-9\-\_]+)/?$ [NC]
RewriteRule ^(.*)$    /articles.php?name=%1[L]
# след правило для того что бы при запросе /articles открывался файл articles.php
RewriteCond %{REQUEST_URI} ^/([a-zA-Z0-9\-\_]+)/?$ [NC]
RewriteRule ^(.*)$    /%1.php[L]


для передачи больше параметров вам нужно их подставлять в строку и помните максимальное количество правил N < 9


--------------------
Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS.
PM MAIL Skype GTalk   Вверх
AGENTxXx
Дата 16.5.2012, 21:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Всем БОЛЬШОЕ СПАСИБО! 
В общем, если честно, то не совсем правильно в начале понял, как работает rewrite!
Я думал, что url сам перекодируется из строки с get запросами, а оказывается нужно делать наоборот - делать ссылки такие как я хочу, а обращаться с get запросами.. В общем - разобрался! 

Еще раз - СПАСИБО! =)
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




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


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

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