Jump to content
Дизайн и модификация IPS Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
ЛЕНИН

Установка IPS в корень или в /forum?

Recommended Posts

Как выглядит ссылки в IPB мы знаем.

Я так понял старые ссылки без чпу, тогда сделать редирект даже немного проще если новое расположение не совпадает со старым.

  • Upvote 1

Share this post


Link to post
Share on other sites
А в чем такая необходимость сохранить именно /forum/?

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

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

Честно говоря уже третий день пытаюсь вникнуть как сделать лучше - голова квадратная... Наверное необходимость как раз в том, что если допустим я не заморачиваюсь с Pages, то сейчас у меня IPS установлен в папку /forum и из коробки все редиректы работают автоматически, то есть мне больше делать ничего не надо. Но поскольку я захотел сделать Pages в корне сайта (вывод форумных данных), а так сделать можно только если перенести IPS в корень, назначить его приложением по умолчанию и, соответственно движок сам назначает форуму адрес /forums, то с этим надо что-то сделать. Другой вариант, если я правильно понимаю, - устанавливаю сразу Suit в корень, Pages у меня по умолчанию выводятся в site.com/, а форум у меня выводится в site.com/forums, но при этом редиректы из коробки вообще не работают, и их все полностью нужно писать самому, чего я, к сожалению, не умею. Да и это наверное не просто для всех категорий урлов написать.

Share this post


Link to post
Share on other sites

Объясню проще, а то вы окончательно запутались.

Старые адреса имеют формат /forum/showthread.php?t=4906646. Соответственно редирект для сохранения ссылок обязателен, поэтому куда он будет для ПС уже без разницы, хоть на /forums/ хоть на /boards/. Ссылки приобретают новый вид и привязываться к чему-то не имеет смысла. Я так понимаю, для вас значение имеет именно техническая реализация.

IPS устанавливаете в корень домена.

Новые ссылки в IPB с чпу после установки Pages приложением по умолчанию приобретают вид /forums/topic/4906646-имя-темы/

Создаете папку /forum/ куда помещаете файлы для редиректа с vb (поставляются вместе с конвертером).

Открываете файл config.php и меняете define( 'IPS_PATH', '/home/user/forum' ); на define( 'IPS_PATH', '..' );

Все. Профит. Старые адреса редиректят на новые. Ничего вручную писать не надо. Все работает из коробки, месторасположение нового форума абсолютно не имеет никакого значения.

 

После всех манипуляции в итоге вы получаете из

старые адреса

/forum/forumdisplay.php?f=1

/forum/showthread.php?t=1

/forum/member.php?m=1

 

новые адреса

/forums/forum/1-название-форума/

/forums/topic/1-название-темы/

/profile/1-имя-пользователя/

  • Upvote 1

Share this post


Link to post
Share on other sites

Вот это, видимо, то что нужно! Просто официальная поддержка мне уже два дня голову морочит, что единственный способ это все сделать - писать самому редиректы. Что если ставить IPS в корень - стандартные редиректы работать не будут. А как я теперь понял это решается перемещением некоторых файлов в папку forum и прописыванием в конфиге. И все же я не уяснил момент с адресом форума в таком случае. Он будет на /forums или на /forum?

 

... после ответа увидел обновление поста, вижу что будет таки /forums. Да и черт с ним, главное все же чтобы поисковики все нормально видели.

 

Я так более менее понял как все сделать, кроме момента - какие файлы переносить в ту папку?

Share this post


Link to post
Share on other sites

Ок, давайте посмотрим с другой стороны. Установите форум в корень домена и будет у вас /forum вместо /forums и что от этого изменится? Вы что-то прицепились к этому /forum и я не могу понять почему. Редиректы можно сделать из любого места, и я наглядно показал как это сделать. То что сказала офф поддержка это стандартный слив. Для поисковых систем не имеет значение, так как адреса по любому меняются, для них главное чтобы был редирект. Больше я не вижу причин зацикливатся на этом /forum, он не решает ничего.

Share this post


Link to post
Share on other sites

В АЦ можно менять FURL'ы. Но система не позволит сменить forums на forum.

Поэтому, как вариант, открыть \applications\forums\data\furl.json и заменить

"topLevel": "forums",

на

"topLevel": "forum",

Далее перестроить FURL

Тогда ссылки будут вида

/forum/forum/1-название-форума/

/forum/topic/1-название-темы/

  • Upvote 1

Share this post


Link to post
Share on other sites

newbie, а смысл от этого? Ну будет там /forum вместо /forums, но редиректы все равно надо будет сделать из физической папки forum. А потом еще и с обновлениями будет мучатся каждый раз.

Share this post


Link to post
Share on other sites

newbie, а смысл от этого?

ТС зациклился на forum. Я предложил вариант.

 

Создаете папку /forum/ куда помещаете файлы для редиректа с vb (поставляются вместе с конвертером).

Что за файлы?

В 4-ке, насколько я знаю, ничего делать не надо. Только не отключать приложение Converter

\applications\convert\hooks\FrontDispatcher.php

		/* If we are here, the URL was not valid. Let's see if we need to do anything for converted sites */
	catch( \OutOfRangeException $e )
	{
		$application = \IPS\Application::load('convert');
		$application::checkRedirects();

		/* If we are still here, let the exception bubble up */
		throw $e;
	}

  • Upvote 1

Share this post


Link to post
Share on other sites

Вот именно что зациклился.

 

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

  • Upvote 1

Share this post


Link to post
Share on other sites

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

  • Upvote 1

Share this post


Link to post
Share on other sites

Как по мне ТС нужно разобраться, как работает IPS4 подчеркнет плюсы и минусы её. После выполнить тестовую конвертацию и разобраться с редиректами.... 100% конвертация буде не из легких, булка с большим колл постов + вложения + нужны не слабые ресурсы сервера.

  • Upvote 1

Share this post


Link to post
Share on other sites

Просто официальная поддержка мне уже два дня голову морочит, что единственный способ это все сделать - писать самому редиректы. Что если ставить IPS в корень - стандартные редиректы работать не будут.

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

 

В коде видно что нет привязки к конкретной папки где был установлен старый форум

 

		$path = $url->data[ \IPS\Http\Url::COMPONENT_PATH ];
		if( mb_strpos( $path, 'forumdisplay.php' ) !== FALSE )
		{
			if( isset( \IPS\Request::i()->f ) )
			{
				$oldId	= \IPS\Request::i()->f;
			}
			elseif( preg_match( '#^(\d+)-[^/]+#i', $url->data[ \IPS\Http\Url::COMPONENT_QUERY ], $matches ) )
			{
				$oldId = $matches[1];
			}
			else
			{
				$queryStringPieces	= explode( '-', mb_substr( $path, mb_strpos( $path, 'forumdisplay.php/' ) + mb_strlen( 'forumdisplay.php/' ) ) );
				$oldId				= $queryStringPieces[0];
			}
		}

Share this post


Link to post
Share on other sites

При поддержке siv1987 удалось разобраться с редиректами.

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

Редиректы работают из коробки! Чему я безмерно рад)) Никогда не понимал как с ними управляться)

Огромнейшая благодарность siv1987!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...