Первое непрочитанное сообщение

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

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 16 лет 5 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз

Re: Первое непрочитанное сообщение

Сообщение HAMMER663 »

phpBB SEO Ultimate SEO URL вот это может всем нужно?
alex88_9
phpBB 1.4.4
Сообщения: 133
Стаж: 14 лет 2 месяца
Благодарил (а): 34 раза

Re: Первое непрочитанное сообщение

Сообщение alex88_9 »

Пчелкин писал(а):У меня перекидывает правильно...какие строки какого файла показать?
При том перекидывает правильно и из Регента и из списка тем...
Кто исправлял (Татьяна, Павел или Сергей, по крайней мере сам СЕО ставил Сергей) - не помню...
То есть сначала тоже была такая проблема, а потом ее удалось кому-то исправить?
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Первое непрочитанное сообщение

Сообщение Пчелкин »

Да... Или после настройки ЗЕРО пропала... Не помню, и не записал причину исчезновения... Видать была запарка по жизни
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
alex88_9
phpBB 1.4.4
Сообщения: 133
Стаж: 14 лет 2 месяца
Благодарил (а): 34 раза

Re: Первое непрочитанное сообщение

Сообщение alex88_9 »

Вчера очередной раз было замечено по поводу перехода к последней страницы:

Модератор удалил сообщение в теме и буквально через несколько минут один пользователь пишет, что не может перейти на последнюю страницу, причем с телефона переходит. Решается как писал уже - удалением удаленного сообщения из корзины и очисткой кэша у пользователя.
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2229
Стаж: 18 лет 9 месяцев
Откуда: Астана
Благодарил (а): 7 раз
Поблагодарили: 344 раза

Re: Первое непрочитанное сообщение

Сообщение nissin »

Shredder писал(а):Для чего нужна строка с $session_forum_id ?
Кривые руки писателей мода.
Переменная похоже вообще нигде не инициализируется.
alex88_9
phpBB 1.4.4
Сообщения: 133
Стаж: 14 лет 2 месяца
Благодарил (а): 34 раза

Re: Первое непрочитанное сообщение

Сообщение alex88_9 »

HAMMER663 писал(а):phpBB SEO Ultimate SEO URL вот это может всем нужно?
Вроде заработало! :!: :!: :!: :!: :!: Продолжаю наблюдения, но пока ни одного сбоя
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 16 лет 5 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз

Re: Первое непрочитанное сообщение

Сообщение HAMMER663 »

Ну наконец-то прочитали мое сообщение))
alex88_9
phpBB 1.4.4
Сообщения: 133
Стаж: 14 лет 2 месяца
Благодарил (а): 34 раза

Re: Первое непрочитанное сообщение

Сообщение alex88_9 »

HAMMER663
Спасибо большое!

nissin
А что делают ваши правки? Нужно ли их вносить, если уже заработало после этой правки? phpBB SEO Ultimate SEO URL
Shredder
Former team member
Сообщения: 2266
Стаж: 17 лет 9 месяцев
Благодарил (а): 283 раза
Поблагодарили: 584 раза

Re: Первое непрочитанное сообщение

Сообщение Shredder »

HAMMER663 писал(а):Ну наконец-то прочитали мое сообщение))
Дело в том, что код из того сообщения вмешивается в работу мода Zero Duplicate. Но я хорошо помню, что отключал этот мод совсем, а баги продолжались даже несмотря на это. Может быть, тут имеются два или более похожих бага, но происходящих из разных частей кода, не знаю.
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 16 лет 5 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз

Re: Первое непрочитанное сообщение

Сообщение HAMMER663 »

Shredder возможно.
alex88_9
phpBB 1.4.4
Сообщения: 133
Стаж: 14 лет 2 месяца
Благодарил (а): 34 раза

Re: Первое непрочитанное сообщение

Сообщение alex88_9 »

Shredder писал(а):Дело в том, что код из того сообщения вмешивается в работу мода Zero Duplicate
Что делает этот МОД? Как узнать установлен он на форуме или нет?
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Первое непрочитанное сообщение

Сообщение Пчелкин »

Если установлен СЕО и не установлен Зеро - вот и причины глюка...
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
Shredder
Former team member
Сообщения: 2266
Стаж: 17 лет 9 месяцев
Благодарил (а): 283 раза
Поблагодарили: 584 раза

Re: Первое непрочитанное сообщение

Сообщение Shredder »

alex88_9 писал(а):Что делает этот МОД? Как узнать установлен он на форуме или нет?
Посмотреть в настройках SEO. В самом низу там должны быть настройки Zero dupe. Мод делает 301 редирект со всех старых адресов на новые.
Пчелкин писал(а):Если установлен СЕО и не установлен Зеро - вот и причины глюка...
Не, глючит-то как раз в полном комплекте. Хотя, как я уже писал, отключать Zero пробовал - тоже глючит.
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Первое непрочитанное сообщение

Сообщение Пчелкин »

Хм... Зеро отключил - перекидывает не правильно... Включил - опять правильно...Часть от зеро с правками от великого и ужасного FEAR93

Код: Выделить всё

		// --> Zero Duplicate
	/**
	* Custom HTTP 301 redirections.
	* To kill duplicates
	*/
	function seo_redirect($url, $header = '301 Moved Permanently', $code = 301, $replace = true) {
		global $db;
		if (!$this->seo_opt['zero_dupe']['on'] || @headers_sent()) {
			return false;
		}
		garbage_collection();
		$url = str_replace('&', '&', $url);
		// Behave as redirect() for checks to provide with the same level of protection
		// Make sure no linebreaks are there... to prevent http response splitting for PHP < 4.4.2
		if (strpos(urldecode($url), "\n") !== false || strpos(urldecode($url), "\r") !== false || strpos($url, ';') !== false) {
			trigger_error('Tried to redirect to potentially insecure url.', E_USER_ERROR);
		}
		// Now, also check the protocol and for a valid url the last time...
		$allowed_protocols = array('http', 'https'/*, 'ftp', 'ftps'*/);
		$url_parts = parse_url($url);
		if ($url_parts === false || empty($url_parts['scheme']) || !in_array($url_parts['scheme'], $allowed_protocols)) {
			trigger_error('Tried to redirect to potentially insecure url.', E_USER_ERROR);
		}
		$http = 'HTTP/1.1 ';
		header($http . $header, $replace, $code);
		header('Location: ' . $url);
		exit_handler();
	}
	/**
	* Set the do_redir_post option right
	*/
	function set_do_redir_post() {
		global $user;
		switch ($this->seo_opt['zero_dupe']['post_redir']) {
			case 'guest':
				if ( empty($user->data['is_registered']) ) {
					$this->seo_opt['zero_dupe']['do_redir_post'] = true;
				}
				break;
			case 'all':
				$this->seo_opt['zero_dupe']['do_redir_post'] = true;
				break;
			case 'off': // Do not redirect
				$this->seo_opt['zero_dupe']['do_redir'] = false;
				$this->seo_opt['zero_dupe']['go_redir'] = false;
				$this->seo_opt['zero_dupe']['do_redir_post'] = false;
				break;
			default:
				$this->seo_opt['zero_dupe']['do_redir_post'] = false;
				break;
		}
		return $this->seo_opt['zero_dupe']['do_redir_post'];
	}
	/**
	* Redirects if the uri sent does not match (fully) the
	* attended url
	*/
	function seo_chk_dupe($url = '', $uri = '', $path = '') {
		global $auth, $user, $_SID, $phpbb_root_path, $config;
		if (empty($this->seo_opt['req_file']) || (!$this->seo_opt['rewrite_usermsg'] && $this->seo_opt['req_file'] == 'search') ) {
			return false;
		}
		if (!empty($_REQUEST['explain']) && (boolean) ($auth->acl_get('a_') && defined('DEBUG_EXTRA'))) {
			if ($_REQUEST['explain'] == 1) {
				return true;
			}
		}
		$path = empty($path) ? $phpbb_root_path : $path;
		$uri = !empty($uri) ? $uri : $this->seo_path['uri'];
		$reg = !empty($user->data['is_registered']) ? true : false;
		$url = empty($url) ? $this->expected_url($path) : str_replace('&', '&', append_sid($url, false, true, 0));
		$url = $this->drop_sid($url);
		// Only add sid if user is registered and needs it to keep session
		if (!empty($_GET['sid']) && !empty($_SID) && ($reg || !$this->seo_opt['rem_sid']) ) {
			if ($_GET['sid'] == $user->session_id) {
				$url .=  (utf8_strpos( $url, '?' ) !== false ? '&' : '?') . 'sid=' . $user->session_id;
			}
		}
		$url = str_replace( '%26', '&', urldecode($url));
		if ($this->seo_opt['zero_dupe']['do_redir']) {
			$this->seo_redirect($url);
		} else {
			$url_check = $url;
			// we remove url hash for comparison, but keep it for redirect
			if (strpos($url, '#') !== false) {
				list($url_check, $hash) = explode('#', $url, 2);
			}
			if ($this->seo_opt['zero_dupe']['strict']) {
				return $this->seo_opt['zero_dupe']['go_redir'] && ( ($uri != $url_check) ? $this->seo_redirect($url) : false );
			} else {
				return $this->seo_opt['zero_dupe']['go_redir'] && ( (utf8_strpos( $uri, $url_check ) === false) ? $this->seo_redirect($url) : false );
			}
		}
	}
	/**
	* expected_url($path = '')
	* build expected url
	*/
	function expected_url($path = '') {
		global $phpbb_root_path, $phpEx;
		$path = empty($path) ? $phpbb_root_path : $path;
		$params = array();
		foreach ($this->seo_opt['zero_dupe']['redir_def'] as $get => $def) {
			if ((isset($_GET[$get]) && $def['keep']) || !empty($def['force'])) {
				$params[$get] = $def['val'];
				if (!empty($def['hash'])) {
					$params['#'] = $def['hash'];
				}
			}
		}
		$this->page_url = append_sid($path . $this->seo_opt['req_file'] . ".$phpEx", $params, false, 0);
		return $this->page_url;
	}
	/**
	* set_cond($bool, $type = 'bool_redir', $or = true)
	* Helps out grabbing boolean vars
	*/
	function set_cond($bool, $type = 'do_redir', $or = true) {
		if ( $or ) {
			$this->seo_opt['zero_dupe'][$type] = (boolean) ($bool || $this->seo_opt['zero_dupe'][$type]);
		} else {
			$this->seo_opt['zero_dupe'][$type] = (boolean) ($bool && $this->seo_opt['zero_dupe'][$type]);
		}
		return;
	}
	/**
	* check start var consistency
	* Returns our best guess for $start, eg the first valid page
	*/
	function seo_chk_start($start = 0, $limit = 0) {
		if ($limit > 0) {
			$start = is_int($start/$limit) ? $start : intval($start/$limit)*$limit;
		}
		if ( $start >= 1 ) {
			$this->start = $this->seo_delim['start'] . (int) $start;
			return (int) $start;
		}
		$this->start = '';
		return 0;
	}
	/**
	* get_canonical
	* Returns the canonical url if ever built
	* Beware with ssl :
	* 	Since we want zero duplicate, the canonical element will only use https when ssl is forced
	* 	(eg set as THE server protocol in config) and will use http in other cases.
	*/
	function get_canonical() {
		return $this->sslify($this->seo_path['canonical'], $this->ssl['forced'], true);
	}
	// <-- Zero Duplicate
мож кому что поможет...
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
alex88_9
phpBB 1.4.4
Сообщения: 133
Стаж: 14 лет 2 месяца
Благодарил (а): 34 раза

Re: Первое непрочитанное сообщение

Сообщение alex88_9 »

Shredder писал(а):Посмотреть в настройках SEO. В самом низу там должны быть настройки Zero dupe. Мод делает 301 редирект со всех старых адресов на новые.
У меня есть такое там, стоит - Да, Да, guest

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