Помощь Обновление php c 5.6 на 7.x prestashop 1.7.5.1

terosufix

Постоялец
Регистрация
16 Ноя 2012
Сообщения
64
Реакции
24
Всем привет. В общем, у меня проблема при изменении весрии php на хосте. Если я включаю PHP 7.0 или 7.1, то не работает только админка при включенной отладке пишет:
3/3) InvalidArgumentException
Unable to parse file "/home/t41090/public_html/mydomain.ru/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Resources/config/web.xml": The XML file "/home/t41090/public_html/mydomain.ru/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Resources/config/web.xml" is not valid.
и разумеется вход в админку не работает
(кстати, если включить _PS_DISPLAY_COMPATIBILITY_WARNING_, то пишет и в пользовательской части:
Notice: Undefined property: DOMDocument::$encoding in /home/t41090/public_html/mydomain.ru/vendor/symfony/symfony/src/Symfony/Component/Translation/Loader/XliffFileLoader.php on line 81)
При версии 7.2, даже пользовательскую часть перекосило (стоит warehouse), хотя вроде как все должнго поддерживаться и даже рекомендуется использовать 7.2 в этой версии престы.
Кто сталкивался? Кэш в /var/cache чистил, что делать не понимаю, куда копать?
tbCb80V

U70idd6
 

Вложения

  • Screenshot_51.png
    Screenshot_51.png
    63,5 KB · Просмотры: 9
Последнее редактирование:
уже проверенная временем отличная команда:
prestashop 1.7.5.2 + php 7.2.17 + MySQL 5.7.26 + warehouse 4.2.1


ставьте чистую престу на ваш конфиг сервера и потом чистого варехауза - и если будут ошибки на экране, то и решайте их по мере поступления

успехов!
 
Это не престашоп, глючит какой-то из модулей php , что-то связанное с xml (libxml , dom, ...)
 
Всем привет. В общем, у меня проблема при изменении весрии php на хосте. Если я включаю PHP 7.0 или 7.1, то не работает только админка при включенной отладке пишет:
3/3) InvalidArgumentException
Unable to parse file "/home/t41090/public_html/mydomain.ru/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Resources/config/web.xml": The XML file "/home/t41090/public_html/mydomain.ru/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Resources/config/web.xml" is not valid.
и разумеется вход в админку не работает
(кстати, если включить _PS_DISPLAY_COMPATIBILITY_WARNING_, то пишет и в пользовательской части:
Notice: Undefined property: DOMDocument::$encoding in /home/t41090/public_html/santaclouds.ru/vendor/symfony/symfony/src/Symfony/Component/Translation/Loader/XliffFileLoader.php on line 81)
При версии 7.2, даже пользовательскую часть перекосило (стоит warehouse), хотя вроде как все должнго поддерживаться и даже рекомендуется использовать 7.2 в этой версии престы.
Кто сталкивался? Кэш в /var/cache чистил, что делать не понимаю, куда копать?
tbCb80V

U70idd6


для устаревших модулей для адаптации систему их переводов под престу 1.7.5 можно такой "костылёк"-замену вставить в файл:

/classes/controller/AdminController.php

Код:
    protected function l($string, $class = null, $addslashes = false, $htmlentities = true)
    {
...   
//webpc 15.04.2019
//$translated = $this->translator->trans($string);
$translated=Context::getContext()->getTranslator()->trans($string);
 
для устаревших модулей для адаптации систему их переводов под престу 1.7.5 можно такой "костылёк"-замену вставить в файл:

/classes/controller/AdminController.php

Код:
    protected function l($string, $class = null, $addslashes = false, $htmlentities = true)
    {
...  
//webpc 15.04.2019
//$translated = $this->translator->trans($string);
$translated=Context::getContext()->getTranslator()->trans($string);
В общем, накатил на другом хосте чистую престу, туда поставил чистый вархауз. Потом к хренам снес все папки на старом хосте и залил с нового (подправил только в /app/config/parameters.php путь до базы) и... ошибка осталась. По поводу того, чтобы хостера пнуть на тему глючных модулей, так хостер сказал, что либо модули работают, либо не работают. Что делать, хз.
 
В общем, накатил на другом хосте чистую престу, туда поставил чистый вархауз. Потом к хренам снес все папки на старом хосте и залил с нового (подправил только в /app/config/parameters.php путь до базы) и... ошибка осталась. По поводу того, чтобы хостера пнуть на тему глючных модулей, так хостер сказал, что либо модули работают, либо не работают. Что делать, хз.

видимо действительно ошибка в БД и выловить полноценно вряд ли получится, особенно если она связана с таблицей configuration

я бы на чистую престу и варехауз 1.7.5.2 импортнул с помощью например migrationpro базу товаров/клиентов
и при необходимости потом помодульно поднастроил
 
Ну хорошо, а можете содержимое vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Resources/config/web.xml показать?
 
Код:
<?xml version="1.0" ?>

<container xmlns="http://symfony.com/schema/dic/services"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">

    <services>
        <defaults public="false" />

        <service id="controller_name_converter" class="Symfony\Bundle\FrameworkBundle\Controller\ControllerNameParser">
            <tag name="monolog.logger" channel="request" />
            <argument type="service" id="kernel" />
        </service>

        <service id="controller_resolver" class="Symfony\Bundle\FrameworkBundle\Controller\ControllerResolver">
            <tag name="monolog.logger" channel="request" />
            <argument type="service" id="service_container" />
            <argument type="service" id="controller_name_converter" />
            <argument type="service" id="logger" on-invalid="ignore" />
        </service>

        <service id="argument_metadata_factory" class="Symfony\Component\HttpKernel\ControllerMetadata\ArgumentMetadataFactory" />

        <service id="argument_resolver" class="Symfony\Component\HttpKernel\Controller\ArgumentResolver">
            <argument type="service" id="argument_metadata_factory" />
            <argument /> <!-- argument value resolvers -->
        </service>

        <service id="argument_resolver.request_attribute" class="Symfony\Component\HttpKernel\Controller\ArgumentResolver\RequestAttributeValueResolver">
            <tag name="controller.argument_value_resolver" priority="100" />
        </service>

        <service id="argument_resolver.request" class="Symfony\Component\HttpKernel\Controller\ArgumentResolver\RequestValueResolver">
            <tag name="controller.argument_value_resolver" priority="50" />
        </service>

        <service id="argument_resolver.session" class="Symfony\Component\HttpKernel\Controller\ArgumentResolver\SessionValueResolver">
            <tag name="controller.argument_value_resolver" priority="50" />
        </service>

        <service id="argument_resolver.service" class="Symfony\Component\HttpKernel\Controller\ArgumentResolver\ServiceValueResolver">
            <tag name="controller.argument_value_resolver" priority="-50" />
            <argument />
        </service>

        <service id="argument_resolver.default" class="Symfony\Component\HttpKernel\Controller\ArgumentResolver\DefaultValueResolver">
            <tag name="controller.argument_value_resolver" priority="-100" />
        </service>

        <service id="argument_resolver.variadic" class="Symfony\Component\HttpKernel\Controller\ArgumentResolver\VariadicValueResolver">
            <tag name="controller.argument_value_resolver" priority="-150" />
        </service>

        <service id="response_listener" class="Symfony\Component\HttpKernel\EventListener\ResponseListener">
            <tag name="kernel.event_subscriber" />
            <argument>%kernel.charset%</argument>
        </service>

        <service id="streamed_response_listener" class="Symfony\Component\HttpKernel\EventListener\StreamedResponseListener">
            <tag name="kernel.event_subscriber" />
        </service>

        <service id="locale_listener" class="Symfony\Component\HttpKernel\EventListener\LocaleListener">
            <tag name="kernel.event_subscriber" />
            <argument type="service" id="request_stack" />
            <argument>%kernel.default_locale%</argument>
            <argument type="service" id="router" on-invalid="ignore" />
        </service>

        <service id="validate_request_listener" class="Symfony\Component\HttpKernel\EventListener\ValidateRequestListener">
            <tag name="kernel.event_subscriber" />
        </service>

        <service id="resolve_controller_name_subscriber" class="Symfony\Bundle\FrameworkBundle\EventListener\ResolveControllerNameSubscriber">
            <argument type="service" id="controller_name_converter" />
            <tag name="kernel.event_subscriber" />
        </service>
    </services>
</container>
 
Назад
Сверху