Вернуться к списку форумов Вернуться

Поддержка пользователей

Community support

Проблемы с переездом - потерялись ссылки

Прохожий
При переезде на другой хостинг потерялись все ссылки. Индексная страница загружается как надо, но при попытке открыть ссылку выдает ошибку 404
Это мой дом
посмотрел - не правильно работает.
ссылки пустые- catid=
похоже проблема:-
в не установленной русской локали или скорее всего кодировке сервера по умолчанию в utf-8 а не windows-1251
после чего надо будет проиндексировать
и почитайте FAQ


Вопрос: Не устанавливается (не распаковывается), а вручную потом работает не так как надо?

Ответ: Проверьте версию PHP, должна быть 5-5.4 (желательно 5.3), также надо проверить значение параметров mbstring в PHP.ini
Вот правильные значения:
mbstring.internal_encoding = windows-1251 или пустой
mbstring.func_overload = 7
Другие значения приведут к невозможности распаковки инсталлятора и к невозможности попасть в созданные разделы товаров.

можно в корневом .htaccess прописать:
AddDefaultCharset WINDOWS-1251
DirectoryIndex index.php index.html index.htm
AddType application/vnd.ms-fontobject .eot
AddType application/octet-stream .otf .ttf
php_value default_charset Windows-1251
php_value mbstring.internal_encoding Windows-1251
php_value mbstring.func_overload 7

Вопрос: При инсталляции вместо русских букв идут квадратики или кракозябры. При принудительном переключении на cp1251 все в порядке.

Ответ: Есть разные способы установки кодировки по умолчанию
Попробуйте:
1. установить не в папке админ а в корневом .htaccess либо

php_value default_charset Windows-1251

либо

AddDefaultCharset Windows-1251

2. в php.ini установить установить
default_charset = "windows-1251"

3. переключить в самой панели хостинга
4. задайте в настройках виртуальных каталогов Apache
5. .htacess корневой директории решающий ве проблемы с кракозябрами:

AddDefaultCharset WINDOWS-1251
DirectoryIndex index.php index.html index.htm
AddType application/vnd.ms-fontobject .eot
AddType application/octet-stream .otf .ttf
php_value default_charset Windows-1251
php_value mbstring.internal_encoding Windows-1251
php_value mbstring.func_overload 7
Прохожий
версия php - 5.4 кодировка на сервере windows-1251. Где искать php.ini вроде все облазил, но так и не увидел.
Прохожий
И еще проблема - не идет почта с сайта
Это мой дом
версия движка какая?
у меня на одном замороженном проекте на версии 7.70 похожая ситуация с пустыми catid= и page=. при этом на этом же хостинге с такими же настройками другой проект крутится нормально.. но версия последняя... ИМХО может это быть связано с какими то подгружаемыми библиотеками?
Это мой дом
а что дает mbstring.func_overload = 7 ??? и именно значение 7 ? чтото нигде толкового пояснения не нахожу
Это мой дом
пустые page и catid суть что модуль Translit.php не возвращает правильные значения в строковых функциях при кодировке по умолчанию в UTF-8 из-за того что Win1251 строки PHP считает двухбайтными и соответственно возвращает пустые значения.
уровень 7 означает минимальные проблемы совместимости возвращаемых значений.
посему надо попросить настроить хост как надо. но я не занимаюсь этим.
Это мой дом
Насчет почты - конечно не идет.
у вас качестве почты указан яндекс мэйл или гуглопочта, не подписанная почта сразу уходит в спам. это уже года 2-3 назад обсуждалось.
вам требуется завести доменную подписанную почту.
делается это обычно на самом хостинге в панели управления хостингом и потом забить новую почту в основные настройки EWC
Это мой дом
php.net

mbstring поддерживает механизм 'перегрузки функций', который позволяет сообщить приложению о том, что используется многобайтная кодировка, без модификации кода, отвечающего за работу со строками. Например, если включена перегрузка функций, то функция mb_substr() будет вызываться вместо substr(). Этот механизм во многих случаях позволяет портировать приложения, поддерживающие только однобайтные кодировки, в многобайтное окружение.


Например, если значение настройки равно 7, то почтовые, строковые и функции регулярных выражений будут перегружаться. Список перегружаемых функций приведен ниже.
Это мой дом
для систем работающих на многобайтном коде (типа битрикс) рекомендуется значение 0
значение 7 рекомендуется для centos ubuntu

EWC однобайтовая система. каждый символ имеет 1 байт, что в 2 раза минимум снижает размер баз данных но приводит к ограничениям - к примеру не поддерживается UTF-8
Вследствии чего невозможно использовать некотрые символы, арабский и иврит.
Ограничение снимается использованием &#XXX; последовательностей
Это мой дом
В новой версии есть механизмы перегрузки, позволяющие работать в режиме однобайтного кода на многобайтных системах. но переписано не все.
Прохожий
Ссылки в верхнем меню заработали, но в боковом (самом нужном) и на самой странице ни в какую. Почта на старом хостинге работала без проблем, а вот при переезде перестала.
Это мой дом
page=ПУСТО
catid=ПУСТО
не заработали значит.

На старом хостинге - работали
На новом хостинге -НЕТ. Значит какой вывод? В чем причина?

Неужели трудно с этими вопросами обратиться к хостинг провайдеру?
Прохожий
Обращался, отправил к разработчику
Это мой дом
Ну сами подумайте какой разрабочик если на никхосте все работало? Значит дело в настройках хоста!

смените хостинг. расположите снова на nic.ru
Прохожий
Хостер со своей стороны сделал абсолютно все что мог. в результате половина ссылок заработала, но часть ссылок ни в какую. Ссылки на разделы сайта работают без проблем (контакты, прайс, и т.д.) ссылки из прайса срабатывают тоже, но ссылки на группы товаров с главной страницы ни в какую. И самое забавное, что это уже второй хостер с точно такой же проблемой. Уже изменили версию php, страницу кодировки, положил рядом catid.txt, провел все танцы с бубнами из "фака" и все без толку упрямо не видит.
Это мой дом
чистовая установка что дает?
Прохожий
да все то же самое
perchatki-elegance.ru
работают все ссылки кроме бокового меню и витрины
Это мой дом
чистовая - это значит новая версия движка!!!
Это мой дом
проблема я знаю в чем.
в новом движке переделана лет 5 назад функция htmlspecialchars
ранее можно было запускать без параметров, в новых PHP только с параметрами

версия PHP не дает запустить деприкейтед код
ставьте новую версию! Или настраивайте хостинг!

временное решение
в модуле modules/translit.php
найти все
htmlspecialchars( XXXX )
и заменить на
htmlspecialchars(XXXX , NULL, '')

Добавить ответ:

                  
Ответьте на вопрос: CKoлbKo бyдeT дBa плюс Tpu?