Пропустить

Как убрать из url index.php

Проблемы с установкой или работой phpBB 3.0.x? Получите помощь здесь!
Свернуть Развернуть Правила форума Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

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

Re: Как убрать из url index.php

Сообщение MAzZY » 08.03.2010 23:33

Предлагаю отказаться вообще от этой глупой затеи, пока не поздно
Аватара пользователя
MAzZY
Former team member
 
Сообщения: 2952
Зарегистрирован: 14.05.2005 23:43
Благодарил (а): 61 раз.
Поблагодарили: 54 раз.
Предупреждения: 1

Re: Как убрать из url index.php

Сообщение Денис Анатольевич » 12.03.2010 18:45

Я поставил себе все 4 SEOмода от http://www.phpbb-seo.com и все стало в порядке. Теперь редиректится на главную станицу без /index.php.

Денис Анатольевич
phpBB 1.4.2
 
Сообщения: 50
Зарегистрирован: 13.01.2010 2:37
Благодарил (а): 3 раз.
Поблагодарили: 0 раз.

Re: Как убрать из url index.php

Сообщение armid » 23.09.2010 1:06

А если убрать index.php, внутренние ссылки на главную как буду ссылаться?
С index.php или без?

armid
phpBB 1.4.4
 
Сообщения: 97
Зарегистрирован: 20.08.2010 19:18
Благодарил (а): 18 раз.
Поблагодарили: 1 раз.

Re: Как убрать из url index.php

Сообщение Nekstati » 23.09.2010 14:18

Комплексное решение.
Удаляем index.php отовсюду, откуда только можно.

Для ссылок на главную страницу:

includes/functions.php
// Найти
		'U_INDEX'				=> append_sid("{$phpbb_root_path}index.$phpEx"),

// Заменить на
		'U_INDEX'				=> append_sid($phpbb_root_path),


Для редиректов (после входа/выхода, регистрации, удаления кук и т. п.):

ucp.php
// Произвести массовую замену (15 раз)
	append_sid("{$phpbb_root_path}index.$phpEx")

// На
	append_sid($phpbb_root_path)

// Найти
		login_box(request_var('redirect', "index.$phpEx"));

// Заменить на
		login_box(request_var('redirect', ''));

includes/functions.php
// Найти (строка 2474)
	global $user, $phpbb_root_path;

// Заменить на
	global $user, $phpbb_root_path, $phpEx;

// Найти
	return $phpbb_root_path . str_replace('&', '&', $redirect);

// Заменить на
	return $phpbb_root_path . str_replace(array('&', 'index.' . $phpEx), array('&', ''), $redirect);

includes/ucp/ucp_register.php
// Найти
				$message = $message . '<br /><br />' . sprintf($user->lang['RETURN_INDEX'], '<a href="' . append_sid("{$phpbb_root_path}index.$phpEx") . '">', '</a>');

// Заменить на
				$message = $message . '<br /><br />' . sprintf($user->lang['RETURN_INDEX'], '<a href="' . append_sid($phpbb_root_path) . '">', '</a>');


Для ссылок и редиректов из администраторского раздела:

adm/index.php
// Найти
		'U_INDEX'				=> append_sid("{$phpbb_root_path}index.$phpEx"),

// Заменить на
		'U_INDEX'				=> append_sid($phpbb_root_path),

includes/acp/acp_main.php
// Найти
				$redirect_url = append_sid("{$phpbb_root_path}index.$phpEx");

// Заменить на
				$redirect_url = append_sid($phpbb_root_path);


Для ссылки «Отметить все форумы как прочтённые»:

index.php
// Найти
	'U_MARK_FORUMS'		=> ($user->data['is_registered'] || $config['load_anon_lastread']) ? append_sid("{$phpbb_root_path}index.$phpEx", 'hash=' . generate_link_hash('global') . '&amp;mark=forums') : '',

// Заменить на
	'U_MARK_FORUMS'		=> ($user->data['is_registered'] || $config['load_anon_lastread']) ? append_sid($phpbb_root_path, 'hash=' . generate_link_hash('global') . '&amp;mark=forums') : '',
За это сообщение автора Nekstati поблагодарили: 4
armid (23.09.2010 17:57), grishin (28.01.2011 11:50), Shredder (24.09.2010 3:27), владимир1983 (23.09.2010 23:03)
Аватара пользователя
Nekstati
Лидер поддержки
Лидер поддержки
 
Сообщения: 2571
Зарегистрирован: 19.03.2009 18:43
Благодарил (а): 9 раз.
Поблагодарили: 772 раз.

Re: Как убрать из url index.php

Сообщение armid » 23.09.2010 18:02

Nekstati
Спасибо Вам огромное. Вы - супер.
Кстати на этом форуме, на главной странице присутствует redirect с index.php на без index.php.
Теперь каждый на своем форуме сможет сделать.
Еще вопрос, на ваш взгляд, эти действия не приведут к потери внутренней перелинковке? Я так понимаю внутренние ссылки на главную страницу, будут вместо forum.ru/index.php иметь вид forum.ru?

armid
phpBB 1.4.4
 
Сообщения: 97
Зарегистрирован: 20.08.2010 19:18
Благодарил (а): 18 раз.
Поблагодарили: 1 раз.

Re: Как убрать из url index.php

Сообщение Nekstati » 23.09.2010 18:17

forum.ru/index.phpforum.ru/
forum.ru/index.php?sid=123456forum.ru/?sid=123456
И т. п.

Учтите, что если на конференции установлен портал и portal.php находится в одной папке с index.php, то все ссылки и редиректы будут вести на страницу портала.
Аватара пользователя
Nekstati
Лидер поддержки
Лидер поддержки
 
Сообщения: 2571
Зарегистрирован: 19.03.2009 18:43
Благодарил (а): 9 раз.
Поблагодарили: 772 раз.

Re: Как убрать из url index.php

Сообщение armid » 23.09.2010 23:24

Портал не установлен. Не имел с ним дело.
Nekstati писал(а):то все ссылки и редиректы будут вести на страницу портала.

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

armid
phpBB 1.4.4
 
Сообщения: 97
Зарегистрирован: 20.08.2010 19:18
Благодарил (а): 18 раз.
Поблагодарили: 1 раз.

Re: Как убрать из url index.php

Сообщение Nekstati » 24.09.2010 2:55

С чего бы это? Просто вместо главной форума ссылки будут на главную портала.
Аватара пользователя
Nekstati
Лидер поддержки
Лидер поддержки
 
Сообщения: 2571
Зарегистрирован: 19.03.2009 18:43
Благодарил (а): 9 раз.
Поблагодарили: 772 раз.

Re: Как убрать из url index.php

Сообщение armid » 24.09.2010 11:06

Я конечно дико извиняюсь...
Еще уточню.
Нельзя будет зайти на главную страницу форума получается? Т.е. список форумов не посмотреть?
Или вы имели ввиду, что внутренние ссылки просто будут ссылаться на главную страницу портала?

armid
phpBB 1.4.4
 
Сообщения: 97
Зарегистрирован: 20.08.2010 19:18
Благодарил (а): 18 раз.
Поблагодарили: 1 раз.

Re: Как убрать из url index.php

Сообщение Поручик » 24.09.2010 11:45

Если portal.php указан в качестве индексного в .htaccess
Профессионал - тот же дилетант, только знающий, где ошибётся.
Генератор db_update.php для phpBB2 с некоторыми удобствами. Многие моды я беру или ищу здесь, здесь, тут
Все консультации только на форуме, приваты и стук в аську по таким вопросам игнорируются!
FAQ-phpBB3 | Ошибки новичков, или как не поссориться с модератором | Правила конференции

наш форум http://forum.aeroion.ru/cat1.html
Аватара пользователя
Поручик
Former team member
 
Сообщения: 3988
Зарегистрирован: 12.05.2005 17:25
Откуда: Оренбург (Южный Урал)
Благодарил (а): 26 раз.
Поблагодарили: 50 раз.

Re: Как убрать из url index.php

Сообщение Nekstati » 12.08.2011 1:42

(Перечитывая свой предыдущий пост.) Это ж надо было так феерично затупить! На самом деле всё делается одной строкой: найти в includes/functions.php

function append_sid($url, $params = false, $is_amp = true, $session_id = false)
{
	global $_SID, $_EXTRA_URL, $phpbb_hook;

Добавить после
	$url = str_replace('index.php', '', $url);

И всё, index.php убит везде: и на форуме, и в админке, и в фотогалерее, и в прочих модах, имеющих страницу ляляля/index.php.

Для нелюбителей править файлы — вариант с хуком: создать файлик includes/hooks/hook_kill_index.php нижеследующего содержания и очистить кэш.
<?php

function kill_index(&$hook, $url, $params = false, $is_amp = true, $session_id = false)
{
	$url = str_replace('index.php', '', $url);
	return append_sid($url, $params, $is_amp, $session_id);
}

$phpbb_hook->register('append_sid', 'kill_index');

?>
За это сообщение автора Nekstati поблагодарил:
sosfx (07.05.2012 7:28)
Аватара пользователя
Nekstati
Лидер поддержки
Лидер поддержки
 
Сообщения: 2571
Зарегистрирован: 19.03.2009 18:43
Благодарил (а): 9 раз.
Поблагодарили: 772 раз.

Re: Как убрать из url index.php

Сообщение frolove » 29.09.2011 18:40

Здравствуйте. Заранее прошу прощения если пишу не туда.
Вопрос такой, после установки форума phpBB 3.0.9, да и в общем то любой версии, там есть демо топик так сказать, что-то вроде Вас приветствует phpBB, после его удаления допустим создаю новый топик, но в ссылке уже пишется /forum/viewtopic.php?f=10&t=2, т.е. уже второй топик, как удалить первый топик, чтобы в конце ссылки мой новый топик показался 1, а не 2?!
Заранее благодарю.
Аватара пользователя
frolove
phpBB 1.0.0
 
Сообщения: 1
Зарегистрирован: 29.09.2011 18:31
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Пред.

Вернуться в Поддержка phpBB 3.0.х

 

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

Бессрочный конкурс phpBB-ориентированных материалов
FastVPS — надёжный и доступный хостинг для phpBB
Место для вашей рекламы