Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

дубли страниц, seoPro


Рекомендованные сообщения

On 2/5/2020 at 9:44 AM, freelancer said:

@Limonad2014 которая у вас версия memcached ? пишут решение работает от 1.4.2 and higher

@freelancer Не совсем так. Пишут, что в memcached версий 1.4.2 и выше размер загружаемого файла можно задать командой "-I", чтобы на выходе был параметр 

Quote

memcached -I 5m

(5Мб для примера.) Но на моём хосинге memcached предоставляется как есть, без возможности конфигурирования.

Изменено пользователем Limonad2014
Ссылка на комментарий
Поделиться на других сайтах


On 2/6/2020 at 9:38 PM, freelancer said:

@Limonad2014

этот код у вас работает без ошибок ?


$cache = new MultipartCache();
$cache->setLimit(1024);

Не совсем понимаю, куда его внедрять. В контроллер seo_pro.php или system/library/cache.php ?

Ссылка на комментарий
Поделиться на других сайтах


16 hours ago, freelancer said:

@Limonad2014 memcached, вас же это интересует

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

$cache = new MultipartCache();
$cache->setLimit(1024);

Вот переписанный файл system/library/cache.php (ocstore 1.5.5.1.2) для работы с memecached. Подскажите, куда конкретно можно впендюрить лимитер, чтобы работало.
 

Spoiler

<?php
final class Cache {
	private $expire;
	private $memcache;
	private $ismemcache = false;

  	public function __construct($exp = 3600) {
  		$this->expire = $exp;

  		if (CACHE_DRIVER == 'memcached')
  		{
		    $mc = new Memcache;
		    if ($mc->pconnect(MEMCACHE_HOSTNAME, MEMCACHE_PORT))
		    {
			$this->memcache = $mc;
			$this->ismemcache = true;
		    };
		};

		if (!$this->ismemcache)
		{
		    $files = glob(DIR_CACHE . 'cache.*');

		    if ($files) {
			    foreach ($files as $file) {
				    $time = substr(strrchr($file, '.'), 1);

			    if ($time < time()) {
					    if (file_exists($file)) {
						    @unlink($file);
					    }
				}
			    }
		    }
		}
  	}

	public function get($key) {
	    if ((CACHE_DRIVER == 'memcached') && $this->ismemcache)
	    {
		return($this->memcache->get(MEMCACHE_NAMESPACE . $key, 0));
	    }
	    else
	    {
		$files = glob(DIR_CACHE . 'cache.' . $key . '.*');

		if ($files) {
    		foreach ($files as $file) {
      			$cache = new MultipartCache();
				$cache->setLimit(1024);

				$handle = fopen($file, 'r');

				if ($handle) {
					$cache = fread($handle, filesize($file));

					fclose($handle);
				}

	      		return unserialize($cache);
   		 	}
		}
	    }
  	}

  	public function set($key, $value) {
	    if ((CACHE_DRIVER == 'memcached') && $this->ismemcache)
	    {
		$this->memcache->set(MEMCACHE_NAMESPACE . $key, $value, 0, $this->expire);
	    }
	    else
	    {

    		    $this->delete($key);

		    $file = DIR_CACHE . 'cache.' . $key . '.' . (time() + $this->expire);

		    $handle = fopen($file, 'w');

    		    fwrite($handle, serialize($value));

    		    fclose($handle);
    	    };
  	}

  	public function delete($key) {
	    if ((CACHE_DRIVER == 'memcached') && $this->ismemcache)
	    {
		$this->memcache->delete(MEMCACHE_NAMESPACE . $key);
	    }
	    else
	    {
		$files = glob(DIR_CACHE . 'cache.' . $key . '.*');

		if ($files) {
    		foreach ($files as $file) {
      			if (file_exists($file)) {
					@unlink($file);
					clearstatcache();
				}
    		}
		}
	    }
  	}
}
?>

 

 

Ссылка на комментарий
Поделиться на других сайтах


  • 2 месяца спустя...

Кэш seo_pro весит 8 Мб. Хочу потестировать как будет работать seo_pro без кэша. Но не могу нигде найти. Нужно для версии 1.5.5.1.2

Подкиньте решения

Ссылка на комментарий
Поделиться на других сайтах


скорее всего не найдете

 

this->cache_data = false;//$this->cache->get('seo_pro');
if (!$this->cache_data) {
	$query = $this->db->query("SELECT LOWER(`keyword`) as 'keyword', `query` FROM " . DB_PREFIX . "url_alias");
	$this->cache_data = array();
	foreach ($query->rows as $row) {
		$this->cache_data['keywords'][$row['keyword']] = $row['query'];
		$this->cache_data['queries'][$row['query']] = $row['keyword'];
	}
//$this->cache->set('seo_pro', $this->cache_data);

 

  • +1 1
Ссылка на комментарий
Поделиться на других сайтах

  • 6 месяцев спустя...
В 22.05.2017 в 09:56, Gann сказал:

Обнаружил дубли вида /index.php?route=information/information/agree&information_id=3, причём если сделать /index.php?route=information/information/&information_id=3, то открывается страница с ид3, а просто перейдя по /index.php?route=information/information/agree&information_id=3 - открывается только текст со страницы без стилей и прочего.

 

Пока просто закрыл от индексации в роботсе, подскажете другое решение?

Здравствуйте. 

 

Как то удалось исправить и выявить причину?

У меня при переходе на: 

хххх.ru/index.php?route=information/agree&information_id=5

идет 301й на

.ru/terms.html

 

а вот при переходе на 

хххх.ru/index.php?route=information/agree&information_id=5

открывается содержимое id 5 без форматирования, как у вас....

 

 

У меня плюс к этому еще и слэши лишние вида:

xxxx.ru/////terms.html

xxxx.ru///////ndex.php?route=information/information/agree&information_id=5

 

кол во слэшей может быть любое. 

 

Ссылка на комментарий
Поделиться на других сайтах


5 часов назад, kapel сказал:

Здравствуйте. 

 

Как то удалось исправить и выявить причину?

У меня при переходе на: 

хххх.ru/index.php?route=information/agree&information_id=5

идет 301й на

.ru/terms.html

 

а вот при переходе на 

хххх.ru/index.php?route=information/agree&information_id=5

открывается содержимое id 5 без форматирования, как у вас....

 

 

У меня плюс к этому еще и слэши лишние вида:

xxxx.ru/////terms.html

xxxx.ru///////ndex.php?route=information/information/agree&information_id=5

 

кол во слэшей может быть любое. 

 

может я и ошибаюсь

но у вас сеопро вообще не включен

Ссылка на комментарий
Поделиться на других сайтах


6 часов назад, KomissarJuve сказал:

может я и ошибаюсь

но у вас сеопро вообще не включен

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

 

пс. допустил ошибки в посте выше, урлы выглядят вот так: 

 

При переходе на: 

хххх.ru/index.php?route=information/agree&information_id=5 

или

хххх.ru/index.php?route=information/information/information/agree&information_id=5

идет 301й на

хххх.ru.ru/terms.html

 

При переходе на 

хххх.ru/index.php?route=information/information/agree&information_id=5

открывается голое содержимое id 5 без форматирования

 

 

 

 

 

Ссылка на комментарий
Поделиться на других сайтах


57 минут назад, kapel сказал:

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

 

пс. допустил ошибки в посте выше, урлы выглядят вот так: 

 

При переходе на: 

хххх.ru/index.php?route=information/agree&information_id=5 

или

хххх.ru/index.php?route=information/information/information/agree&information_id=5

идет 301й на

хххх.ru.ru/terms.html

 

При переходе на 

хххх.ru/index.php?route=information/information/agree&information_id=5

открывается голое содержимое id 5 без форматирования

 

 

 

 

 

вроде если сеопро включен и везде все заполнено

то таких ?route=information/agree&information_id=5  урл вообще не должно быть

Ссылка на комментарий
Поделиться на других сайтах


44 минуты назад, KomissarJuve сказал:

вроде если сеопро включен и везде все заполнено

то таких ?route=information/agree&information_id=5  урл вообще не должно быть

так в том то и проблема, что они есть. Сейчас поставил ocstore 2.3 из коробки, включил сео про и тд, вот результат: 

https://test2.kapelyug.ru/index.php?route=information/information/agree&information_id=6

https://test2.kapelyug.ru/index.php?route=information/agree&information_id=6

 

При этом в режиме обслуживания данные ссылки недоступны обе. 

Изменено пользователем kapel
Ссылка на комментарий
Поделиться на других сайтах


2 часа назад, KomissarJuve сказал:

у вас походу чпу нигде не прописано

и файл .htaccess.txt не правили

Ну что же вы меня совсем за осла? )))) стандартный hta стоит естественно и чпу настроено. 

 

Изменено пользователем kapel
Ссылка на комментарий
Поделиться на других сайтах


12 часов назад, kapel сказал:

Ну что же вы меня совсем за осла? )))) стандартный hta стоит естественно и чпу настроено. 

 

Я думаю что КомиссарЖюв прав

Ссылка на комментарий
Поделиться на других сайтах


Всем привет!

Все названия ЧПУ категорий и  товаров генерил сторонним модулем, после этого включил сеопро в админке, Яша наругался на наличие дублей и страниц со / на конце, вида  http://domen.ru/categoria/ 

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

Вопрос, чем плохо что у меня стоит модуль ЧПУ дефолтный?

Ссылка на комментарий
Поделиться на других сайтах


3 часа назад, ustass сказал:

Всем привет!

Все названия ЧПУ категорий и  товаров генерил сторонним модулем, после этого включил сеопро в админке, Яша наругался на наличие дублей и страниц со / на конце, вида  http://domen.ru/categoria/ 

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

Вопрос, чем плохо что у меня стоит модуль ЧПУ дефолтный?

уже 1000 раз было сказано seopro устраняет дубли(при правильной эксплуатации)

а что вы там делаете на своем сайте ну так здесь нету телепатов

Изменено пользователем KomissarJuve
Ссылка на комментарий
Поделиться на других сайтах


19 минут назад, KomissarJuve сказал:

уже 1000 раз было сказано seopro устраняет дубли(при правильной эксплуатации)

сори настройки такие:

2020-11-27_14-34-07.png.8b5dd2d6cb51586c5d525b3250b50b7a.png

 

.htaccess

Цитата

# 1.To use URL Alias you need to be running apache with mod_rewrite enabled.

# 2. In your opencart directory rename htaccess.txt to .htaccess.

# For any support issues please visit: http://www.opencart.com

Options +FollowSymlinks

# Prevent Directoy listing
Options -Indexes

# Prevent Direct Access to files
<FilesMatch "(?i)((\.tpl|\.ini|\.log|(?<!robots)\.txt))">
 Require all denied
## For apache 2.2 and older, replace "Require all denied" with these two lines :
# Order deny,allow
# Deny from all
</FilesMatch>

# SEO URL Settings
RewriteEngine On
# If your opencart installation does not run on the main web folder make sure you folder it does run in ie. / becomes /shop/

RewriteBase /
# С редиректом 301
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteRule ^sitemap.xml$ index.php?route=extension/feed/google_sitemap_fast [L]
RewriteRule ^googlebase.xml$ index.php?route=extension/feed/google_base [L]
RewriteRule ^system/download/(.*) index.php?route=error/not_found [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css)
RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]

### Additional Settings that may need to be enabled for some servers
### Uncomment the commands by removing the # sign in front of it.
### If you get an "Internal Server Error 500" after enabling any of the following settings, restore the # as this means your host doesn't allow that.

# 1. If your cart only allows you to add one item at a time, it is possible register_globals is on. This may work to disable it:
# php_flag register_globals off

# 2. If your cart has magic quotes enabled, This may work to disable it:
# php_flag magic_quotes_gpc Off

# 3. Set max upload file size. Most hosts will limit this and not allow it to be overridden but you can try
# php_value upload_max_filesize 999M

# 4. set max post size. uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields
# php_value post_max_size 999M

# 5. set max time script can take. uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields
# php_value max_execution_time 200

# 6. set max time for input to be recieved. Uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields
# php_value max_input_time 200

# 7. disable open_basedir limitations
# php_admin_value open_basedir none

### Display PHP errors 
### Uncomment the commands by removing the # sign in front of it.
# php_flag display_startup_errors on
# php_flag display_errors on
# php_flag html_errors on
# php_flag track_errors on
# php_value error_reporting "E_ALL"

 

вот такие настройки.

Посмотрите пожалуйста всё ли правильно, что необходимо исправить?

 

2020-11-27_14-34-07.png

Изменено пользователем ustass
Ссылка на комментарий
Поделиться на других сайтах


4 часа назад, ustass сказал:

Яша наругался на наличие дублей и страниц со / на конце, вида  http://domen.ru/categoria/ 

 

гуглите правильную инструкцию

Переход на SEO_PRO со стандартного ЧПУ-формирователя

 

Ссылка на комментарий
Поделиться на других сайтах

1 час назад, Otvet сказал:

гуглите правильную инструкцию

вы про правку кода?

Domen.ru\catalog\controller\startup\seo_pro.php

//$seo_url .= '/';

Сделал так, палка исчезла

Изменено пользователем ustass
Ссылка на комментарий
Поделиться на других сайтах


26 минут назад, ustass сказал:

вы про правку кода?

Domen.ru\catalog\controller\startup\seo_pro.php


//$seo_url .= '/';

Сделал так, палка исчезла

 

26 минут назад, ustass сказал:

вы про правку кода?

Domen.ru\catalog\controller\startup\seo_pro.php


//$seo_url .= '/';

Сделал так, палка исчезла

товар без категорий сделайте

Ссылка на комментарий
Поделиться на других сайтах


15 минут назад, KomissarJuve сказал:

товар без категорий сделайте

это 

case 'path':
    $categories = explode('_', $value);
    foreach ($categories as $category) {
        $queries[] = 'category_id=' . $category;
    }
    unset($data[$key]);
    break;

к этому

case 'path':
    $categories = explode('_', $value);
    //foreach ($categories as $category) {
        $queries[] = 'category_id=' . end($categories);
    //}
    unset($data[$key]);
    break;

так?

ЧПУ пропал

index.php?route=product/product&path=71_110_119_120&product_id=9179

 

Изменено пользователем ustass
Ссылка на комментарий
Поделиться на других сайтах


Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
 Поделиться

×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.