Замена site.ru/forum/index.php на site.ru/forum/ для SMF 2.0 RC1.2

Автор lokigrey, 05 июля 2010, 19:03:35

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

lokigrey

Здравствуйте. Нужно заменить site.ru/forum/index.php на site.ru/forum/.

Движок форума: SMF 2.0 RC1.2
Урл форума: bbsp.ru/forum/. Доступен как в виде bbsp.ru/forum/, так и в виде bbsp.ru/forum/index.php

Хотелось бы чтобы ссылки с анкором "Строительный форум bbsp.ru" со страниц вели не на bbsp.ru/forum/index.php а на bbsp.ru/forum/.

Идеальным был бы вариант если бы еще и ссылки на разделы вели также на bbsp.ru/forum/блаблабла#с1 (bbsp.ru/forum/блаблабла#с2, bbsp.ru/forum/блаблабла#с3).

Заранее большое спасибо!

Макар

мод реврайт
или претти урл
вам в помощь
Если Вы здесь недавно, не обольщайтесь тоном некоторых дискуссий.
Все чаще слова - юзай поиск, приобретают смысл - иди в ж..........  Приобретение смысла автоматизированно - Ответы на любой вопрос по SMF
Не пишите несколько сообщений подряд - тут вам не Twitter  >:( в остальных ситуациях мы не сильно зверствуем 2funny

lokigrey

Цитата: Makar от 05 июля 2010, 19:14:01
мод реврайт
или претти урл
вам в помощь

Можно чуть поподробнее, а желательно даже пошагово?:)

Зы. первый и единственный форум, так что извиняйте.

Drakonsa


lokigrey

Цитата: Drakonsa от 05 июля 2010, 20:47:24
/forum/.htaccess

Файл должен иметь такое название? В папке /forum/ его нету.

Если кому-то не так сложно, может он хоть немного подробней это расписать?

Макар

его можно создать

мы будем цедить инфу в час по чайной ложке 2funny
Цитата: примерРеализация

[править]Apache
Для веб-сервера Apache существует мощный модуль mod_rewrite, который включается в стандартный дистрибутив. Он обладает массой возможностей интерпретации URL перед обработкой необходимым модулем.
В большинстве случае в файле .htaccess указывается с помощью регулярного выражения формат URL, который должен быть обработан как другой URL. Например:
RewriteEngine on
RewriteRule ^article/([0-9]+)/? article.php?id=$1 [L]
Первая строчка включает mod_rewrite. Во второй указывается, что веб-сервер при запросе URL вида /article/450/ должен обратиться к /article.php?id=450 .

вам дали готовое решение по вашему вопросу

поищите и почитайте информацию про ЧПУ ...................

подумайте

а потом задайте себе вопрос - а на  ::) на на оно мне нуно ?

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

и прочее ..........................

первая заповедь админа - работает ? НЕ ЛЕЗЬ !!!

вы АДМИН ?
подумайте, ее не просто так вывели.................


а судя по вашим вопросам , мой вам совет не лазьте туда , в чем не разбираетесь
Если Вы здесь недавно, не обольщайтесь тоном некоторых дискуссий.
Все чаще слова - юзай поиск, приобретают смысл - иди в ж..........  Приобретение смысла автоматизированно - Ответы на любой вопрос по SMF
Не пишите несколько сообщений подряд - тут вам не Twitter  >:( в остальных ситуациях мы не сильно зверствуем 2funny

lokigrey

Цитата: Makar от 05 июля 2010, 23:32:50
его можно создать

мы будем цедить инфу в час по чайной ложке 2funny

А есть вариант все и сразу?:)

Цитата: Makar от 05 июля 2010, 23:32:50поищите и почитайте информацию про ЧПУ ...................

подумайте

Читал, думал. Пришел к выводу что сам не справлюсь.

Цитата: Makar от 05 июля 2010, 23:32:50а потом задайте себе вопрос - а на  ::) на на оно мне нуно ?

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

1. Оно мне нужно для того, что сейчас релевантной по запросам в яндексе является страница site.ru/forum/index.php, а нужно чтобы этой страницей была site.ru/forum/. Помимо этого, гугель считает это за две разных страницы, что определенно не есть гут.
2. Почему урлы не будут работать? Мне не везде нужно убирать "index.php",а только из урла site.ru/forum/index.php. Т.е. например bbsp.ru/forum/index.php?topic=874 так и должен будет остаться.

Цитата: Makar от 05 июля 2010, 23:32:50первая заповедь админа - работает ? НЕ ЛЕЗЬ !!!

Так а если работает но не так как надо?

Вобщем так, готов предложить материальное вознаграждение за помощь (лучше наверно в аське - мой номер 4669ноль75ноль5). По цене договоримся.

И еще - реализация через мод реврайт, как я понял, делает что-то типа редиректа. А мне нужно, чтобы сами страницы изначально ссылались на нужный вид главной страницы форума.

BIOHAZARD

редирект можно поставить и перманентно, тогда поисковики просто перестанут индексировать один из адресов и пометят его как устаревший

почитайте про ошибки/редиректы вида 30х
Мои моды:
  • RedirectPage
  • Counters
  • CustomSearch
  • SypexDumper
   адаптирую темы    1.1.хx<=>2.0задавая вопросы, старайтесь сразу указывать конечную цель, предполагаемый Вами путь не обязательно окажется самым коротким

Любые моды на заказ

lokigrey

Цитата: BIOHAZARD от 06 июля 2010, 17:53:59
редирект можно поставить и перманентно, тогда поисковики просто перестанут индексировать один из адресов и пометят его как устаревший

почитайте про ошибки/редиректы вида 30х

Ну а все-таки, как без редиректа сделать, чтобы напрямую ссылка стояла на главную страницу форума, что, где и на что заменить?

BIOHAZARD

чтобы убрать index.php надо ковырять код

как минимум код кнопок главного меню в файле subs.php и хлебные крошки в index.template.php

после этого в течении недели-двух следить за внутренними переходами на сайте на главную, откуда на неё можно попасть по неправильному пути (счётчики посещений Вам в помощь)
Мои моды:
  • RedirectPage
  • Counters
  • CustomSearch
  • SypexDumper
   адаптирую темы    1.1.хx<=>2.0задавая вопросы, старайтесь сразу указывать конечную цель, предполагаемый Вами путь не обязательно окажется самым коротким

Любые моды на заказ

Макар

Я тут полазил по твоему сайту с форумом. Получается у тебя с сайта на форум стоит ссылка без индекса, а скрипт при открытии автоматом ее подставляет . . .

ну так и пропиши на сайте ссылку на форум с индексом.  это раз. В смф все адреса идут через индекс, один погоды не сделает, если ты поменяешь только главный форума.

для дружбы с ПС настрой правильно роботс.тхт это два. (а твой роботс даже файлом назвать язык не поднимается ) И от этого пользы будет в разы больше. Как раз таки заставляем пс роботов лазить везде по форуму и все индексировать. А то что нам не надо в поисковой выдаче запрещаем и наслаждаемся жизнью.
Если Вы здесь недавно, не обольщайтесь тоном некоторых дискуссий.
Все чаще слова - юзай поиск, приобретают смысл - иди в ж..........  Приобретение смысла автоматизированно - Ответы на любой вопрос по SMF
Не пишите несколько сообщений подряд - тут вам не Twitter  >:( в остальных ситуациях мы не сильно зверствуем 2funny

Plazik

Вот такой себе редирект поставил:
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://site.ru/ [R=301,L]

Validoll

Может я не совсем понял суть проблемы, но раз форум доступен по 2 адресам сразу и "лишнего гемора не очень-то хочется", то почему бы не забить редирект через ПУ хостера? Или нет такой возможности?
Занимаюсь визуализацией модов и созданием рисунков-концептов для модификаций в разработке.
Что-то не работает? Проверьте права доступа к файлам.

Yworld_garry

Если из за ПС всё это городить то проще сделать в robots.txt
Disallow: /index.php

С индексными страницами ПС давно разобрались и клеят их. Но видимо хуже не будет от закрытия в роботсе. Хотя не проверял.

flyingspook

может кому пригодиться
редирект для http://www.сайт/forum/index.php просто на forum/  без index.php

ложим файл .htaccess в папку /forum

содержание файла .htaccess

RewriteEngine On
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /forum/index\.php\ HTTP/
RewriteRule ^.*$ http://%{HTTP_HOST}/forum/ [R=301,L]