Устарело
...
Пассворк 4
Как обновить Пассворк с 4→5 ве...

Обновление Пассворк 4→5 (Windows Server)

14min

Этот инструкция описывает как обновить Пассворк с 4-ой до 5-ой версии для Windows Server. Пассворк 5-ой версии работает на PHP 8.0, поэтому кроме обновления исходного кода также потребуется установить новую версию PHP.

💡 Рекомендуем сделать бекап системы перед началом обновления

Оглавление

1. Установка PHP 8.0

💡 Обратите внимание, необходимо установить именно PHP 8.0. PHP 8.1 на текущий момент не поддерживается

1.Скачать PHP 8.0 с официального сайта — https://windows.php.net/downloads/releases/php-8.0.26-nts-Win32-vs16-x64.zip

2.Проверить свойства архива. Снять свойство «заблокирован», если архив получил его при скачивании.

3.Распаковать архив.

4.Переместить папку с распакованным архивом (В данном примере путь C:\Program Files\php8)

5.Обновите VC++ Visual C++ Redistributable Packages for Visual Studio:

⬇️ https://download.visualstudio.microsoft.com/download/pr/b929b7fe-5c89-4553-9abe-6324631dcc3a/296F96CD102250636BCD23AB6E6CF70935337B1BBB3507FE8521D8D9CFAA932F/VC_redist.x64.exe

6.Перезагрузите систему.

2. Добавление расширений Phalcon и MongoDB для PHP.

Скачайте архивы с файлами расширений:

Shell

Shell


Проверьте свойства архивов и снимите свойство «заблокирован», если архивы получили его при скачивании.

Поместите файлы расширений в директорию — C:\Program Files\php8\ext

3. Выбор PHP 8.0 в качестве основной версии PHP для сайта с Пассворк.

1.Скачайте и установите PHP Manager for IIS

⬇️ https://github.com/phpmanager/phpmanager/releases/download/v2.7/PHPManagerForIIS_x64.msi

2.Откройте «IIS Manager» и перейдите в «PHP Manager».

Document image


3.Зарегистрируйте версию PHP указав путь к php-cgi.exe — «Register new PHP version».

4.Настройте путь для файла логов «Configure error reporting»:

Document image


5.Добавьте ранее распакованные расширения «Add an extension», а также включите необходимые и отключите ненужные «Enable or disable an extension». Итоговый список расширений:

Document image


4. Исправление файла php.ini

Скопируйте php.ini из версии PHP 7, которая была установлена ранее и изменить следующие строки:

Shell

Document image


5. Загрузка Пассворк

  1. Скачайте Пассворк 5 из клиентского портала (https://portal.passwork.ru)
  2. Переименуйте папку C:\inetpub\wwwroot\C:\inetpub\wwwroot-old\
  3. Создайте новую папку C:\inetpub\wwwroot\
  4. Извлеките архив и скопируйте содержимое в директорию C:\inetpub\wwwroot\

6. Установка прав доступа

1.Откройте IIS Manager, нажмите правой кнопкой на вебсайт и выберите «Edit permissions».

Document image


2.Нажмите «Edit», затем «Add» найдите «IUSR» аккаунт. Выберите в списке «IUSR» и разрешите «Write» и «Modify» опции, затем нажмите «Ok» два раза.

Document image


7. Перенос config.ini

Скопируйте файл C:\inetpub\wwwroot-old\app\config\config.iniC:\inetpub\wwwroot\app\config\config.ini

8. Проверка настроек HTTPS

Если вы используете HTTPS проверьте, включите параметр ;session.cookie_secure в файле C:\Program Files\php8\php.ini

Shell


9. Импорт правил URL rewrite

Дважды щелкните на значке «URL Rewrite». Нажмите «Импорт правил» и выберите файл .htaccess из корневого каталога сайта, затем нажмите кнопки «Open» и «Import».

Document image


После импорта нажмите кнопку «Apply».

10. Настройка фоновых задач

Фоновые задачи — это задачи, которые выполняются по планировщику в фоновом режиме. Например, синхронизация LDAP, загрузка фавиконов и другие задачи, которые требует много времени, постоянного выполнения или распределения ресурсов.

11. Возможные проблемы и решения

1.Иногда, после изменения версии PHP в IIS, настройки для index.php исчезают. Проверьте, есть ли запись для index.php в «Default Document», если запись отсутствует, добавьте ее:

Document image


2.Мы также рекомендуем вам проверить журнал PHP и путь, который вы ранее указали в php.ini. Если вы видите ошибку — The session save path [C:\Windows\temp] is not writable, назначьте права на запись на эту папку пользователям IUSR или NETWORK SERVICE.

3.Убедитесь, что расширения php_psr.dll, php_mongodb.dll, php_phalcon.dll были доступны в «PHP Manager» → «PHP Extensions»:

Document image