Posted September 17, 20222 yr comment_186223 В Invision Community 4.7.2 появился сканер совместимости PHP 8 для сторонних приложений и плагинов. Пожалуйста, прочитайте этот пост перед обновлением с версии 4.7.1 или ниже. Зачем нам это нужно? Базовым языком программирования, который использует Invision Community, является PHP. Последняя версия PHP 8 была выпущена в ноябре 2020 года и содержит множество критических изменений и несовместимостей, которые не имеют обратной совместимости. Некоторые из этих изменений означают, что то, что было безобидным молчаливым уведомлением, теперь является фатальной ошибкой, что означает, что если вы обновитесь с несовместимым кодом, ваше сообщество выдаст фатальную ошибку, которая приведет либо к белому экрану, либо к сообщению об ошибке на уровне сервера в вашем браузере. Сообщество Invision не может зафиксировать и устранить эти фатальные ошибки. Фатальные ошибки находятся глубже в цепочке выполнения. PHP 8 существует уже почти два года, а PHP 7.4 «устарел», и обновления безопасности прекратятся с ноября, что означает, что он становится небезопасным, поэтому всем придется очень скоро перейти на PHP 8. Что это? Средство проверки совместимости проверяет все сторонние приложения и плагины, которые вы добавили из Marketplace. Мы рекомендуем нашим авторам Marketplace тестировать PHP 8, но не все это делают, и поэтому такие приложения и плагины, которые нормально работают с PHP 7.4, не будут работать с PHP 8. Средство проверки совместимости сканирует весь сторонний код на наличие проблем, которые могут привести к фатальным ошибкам, и, если находит их, отключает приложение или подключаемый модуль при обновлении. Единственный способ повторно включить приложение или обновить его — обновить его до версии, совместимой с 4.7.2, из магазина. Могу ли я повторно включить отключенные сторонние плагины и приложения? Да, если вы уверены, что плагины и приложения нормально работают с вашей текущей версией PHP, вы можете снова включить их до нашего ноябрьского релиза, после чего приложения будут принудительно отключены. Стоит связаться с авторами ключевых плагинов и приложений, чтобы узнать, есть ли у них версия, совместимая с PHP8, или они планируют выпустить ее к ноябрю, чтобы вы могли подготовиться к ноябрьскому обновлению. Это действительно необходимо? К сожалению, да. PHP вносит смелые изменения, которые не совместимы с предыдущими версиями. Сообществу Invision повезло, что так много сторонних разработчиков выпускают приложения и плагины для дальнейшего улучшения набора функций, но у нас нет прямого контроля над этим кодом. Нашим приоритетом является обеспечение плавного обновления вашего сайта и его бесперебойной работы. Почему сейчас? Мы уже некоторое время работаем над совместимостью с PHP 8 и призываем наших сторонних авторов сделать то же самое и протестировать PHP 8. В августе мы также проинформировали разработчиков о сканере и о том, что он может сделать с их приложениями. Мы также выпускаем бета-версии Invision Community 4.7 с мая этого года, чтобы дать им как можно больше времени для обновления своих приложений. Внедрение этого изменения болезненно в краткосрочной перспективе, но принесет пользу всем в долгосрочной перспективе. Что еще я могу сделать? Ваша лицензия на самостоятельный хостинг позволяет вам выполнить тестовую установку , которую вы должны использовать в качестве промежуточного сайта, и протестировать любые обновления на этом промежуточном сайте перед выполнением обновления на рабочем сайте. Это позволит вам зафиксировать любые проблемы, которые могут возникнуть, прежде чем запускать его на своем рабочем сайте. Как всегда, мы рекомендуем делать резервную копию перед любым обновлением, чтобы вы могли легко выполнить откат, если возникнут какие-либо проблемы. Я использую PHP 7, влияет ли это на меня? Да, сканер совместимости по-прежнему будет работать при обновлении и проверять наличие проблем с PHP 8, поэтому при обновлении до PHP 8 вы не обнаружите, что ваше сообщество больше не работает.
September 17, 20222 yr comment_186227 Обычному человеку все эти пхп 7 и пхп 8 ни о чем не говорят. Да и разницу никто не заметит. Просто блажь программистов: все движутся и мы куда-то движемся. Edited September 17, 20222 yr by Zero108
September 17, 20222 yr comment_186231 2 часа назад, Anche сказал: а PHP 7.4 «устарел», и обновления безопасности прекратятся с ноября, что означает, что он становится небезопасным, поэтому всем придется очень скоро перейти на PHP 8. те, кто до сих пор сидит на пхп 5.4/5.6 -🗿
September 22, 20222 yr comment_186550 Whenever I try to set the PHP version to 8.0 than my current 7.4, my test forum throws 500 Error over AdminCP What works is the only main page of the website and nothing else! It's a little pain in the ass that I haven't figured it out what causes the issue yet!
September 22, 20222 yr comment_186552 2 часа назад, Orpheus сказал: Whenever I try to set the PHP version to 8.0 than my current 7.4, my test forum throws 500 Error over AdminCP What works is the only main page of the website and nothing else! It's a little pain in the ass that I haven't figured it out what causes the issue yet! Have you looked at the web server logs? At 500 an error always they will be.
September 23, 20222 yr comment_186593 Я один такой везучий и у меня на свежеустановленной 4.7.2.1 не работает этот сканер? Если зайти в саппорт, то кружочек в сканере крутится бесконечно, в логах ошибка ( связанная с count() в самом Scanner.php ).
September 23, 20222 yr comment_186596 1 минуту назад, by_ix сказал: видимо, да. у меня везде ошибки выдаёт. Судя по всему они не предусмотрели варианта, когда ошибок нет Если разрешить приложение с ошибкой, то всё нормально, создается массив ошибок и сканер срабатывает, а если ошибок нет, массив не создается и лезет любимая ошибка с count() Для любопытных - исправляется заменой в system/Application/Scanner.php (строка 434) if ( !empty( $methodIssues ) на if ( !empty( $methodIssues ) && \is_array($methodIssues) )
September 23, 20222 yr comment_186598 4.6.12.1 и не парюсь. хотя Вам парни большое спасибо, за ошибки все что меня ожидают
September 24, 20222 yr comment_186613 11 часов назад, SlawkA сказал: спасибо, за ошибки все что меня ожидают Безумству храбрых поем мы песню. 😀 Edited September 24, 20222 yr by Zero108
September 24, 20222 yr comment_186614 12 часов назад, SlawkA сказал: 4.6.12.1 Invision Community v4.6.8 и тоже не парюсь)) что может быть стабильнее последней официальной лицензией перед концом срока её))) Edited September 24, 20222 yr by the.bunin
September 24, 20222 yr comment_186615 On 9/23/2022 at 12:25 AM, September^^ said: Have you looked at the web server logs? At 500 an error always they will be. Nope, not yet...I am so lazy to do that! I am currently on PHP 7.4, but it seems like that I need to change the PHP version to 8 or 8.1 sooner no matter what!
September 25, 20222 yr comment_186658 On 9/23/2022 at 12:25 AM, September^^ said: Have you looked at the web server logs? At 500 an error always they will be. It might sound like mbstring extension isn't loaded, but I suppose it does load but still throws an error Quote [25-Sep-2022 11:41:02 UTC] PHP Fatal error: Uncaught Error: Call to undefined function IPS\mb_internal_encoding() in /home/mywebsite/public_html/init.php:558 Stack trace: #0 /home/mywebsite/public_html/init.php(1435): IPS\IPS::init() #1 /home/mywebsite/public_html/applications/core/interface/task/task.php(29): require_once('/home/mywebsite/...') #2 {main} thrown in /home/mywebsite/public_html/init.php on line 558 [25-Sep-2022 11:42:01 UTC] PHP Fatal error: Uncaught Error: Call to undefined function IPS\mb_internal_encoding() in /home/mywebsite/public_html/init.php:558 Stack trace: #0 /home/mywebsite/public_html/init.php(1435): IPS\IPS::init() #1 /home/mywebsite/public_html/applications/core/interface/task/task.php(29): require_once('/home/mywebsite/...') #2 {main} thrown in /home/mywebsite/public_html/init.php on line 558 [25-Sep-2022 11:43:01 UTC] PHP Fatal error: Uncaught Error: Call to undefined function IPS\mb_internal_encoding() in /home/mywebsite/public_html/init.php:558 Stack trace: #0 /home/mywebsite/public_html/init.php(1435): IPS\IPS::init() #1 /home/mywebsite/public_html/applications/core/interface/task/task.php(29): require_once('/home/mywebsite/...') #2 {main} thrown in /home/mywebsite/public_html/init.php on line 558 [25-Sep-2022 11:44:01 UTC] PHP Fatal error: Uncaught Error: Call to undefined function IPS\mb_internal_encoding() in /home/mywebsite/public_html/init.php:558 Stack trace: #0 /home/mywebsite/public_html/init.php(1435): IPS\IPS::init() #1 /home/mywebsite/public_html/applications/core/interface/task/task.php(29): require_once('/home/mywebsite/...') #2 {main} thrown in /home/mywebsite/public_html/init.php on line 558 This only happens when I change the PHP version from 7.4 to 8.0 Edited September 25, 20222 yr by Orpheus
September 25, 20222 yr comment_186660 sudo apt install php8.n-mbstring (n - your php version suffix) Edited September 25, 20222 yr by Desti
September 25, 20222 yr comment_186665 А кто может дать ссылку на совместимость разных версий форума с версиями php? Edited September 25, 20222 yr by aplayer
September 26, 20222 yr comment_186669 21 hours ago, Desti said: sudo apt install php8.n-mbstring (n - your php version suffix) Do you mean to install mbstring? I guessed the same, but it's already installed/enabled. And I am using cPanel's PHP Selector!
September 26, 20222 yr comment_186673 2 hours ago, Desti said: run php code print_r(get_loaded_extensions()); Thanks, I will do that and get back to you once I am done!
September 27, 20222 yr comment_186683 20 hours ago, Desti said: run php code print_r(get_loaded_extensions()); PHP 7.4 Quote Array ( [0] => Core [1] => date [2] => libxml [3] => openssl [4] => pcre [5] => sqlite3 [6] => zlib [7] => bz2 [8] => calendar [9] => ctype [10] => curl [11] => hash [12] => filter [13] => ftp [14] => gettext [15] => gmp [16] => SPL [17] => iconv [18] => pcntl [19] => readline [20] => Reflection [21] => session [22] => standard [23] => shmop [24] => SimpleXML [25] => mbstring [26] => tokenizer [27] => xml [28] => litespeed [29] => i360 [30] => bcmath [31] => dba [32] => dom [33] => enchant [34] => fileinfo [35] => gd [36] => imagick [37] => imap [38] => intl [39] => json [40] => ldap [41] => exif [42] => mysqlnd [43] => mysqli [44] => odbc [45] => PDO [46] => pdo_mysql [47] => PDO_ODBC [48] => pdo_pgsql [49] => pdo_sqlite [50] => pgsql [51] => Phar [52] => posix [53] => pspell [54] => snmp [55] => soap [56] => sockets [57] => sysvmsg [58] => sysvsem [59] => sysvshm [60] => tidy [61] => timezonedb [62] => xmlreader [63] => xmlrpc [64] => xmlwriter [65] => xsl [66] => zip ) PHP 8.0 Quote Array ( [0] => Core [1] => date [2] => libxml [3] => openssl [4] => pcre [5] => sqlite3 [6] => zlib [7] => bz2 [8] => calendar [9] => ctype [10] => curl [11] => hash [12] => filter [13] => ftp [14] => gettext [15] => gmp [16] => SPL [17] => iconv [18] => json [19] => pcntl [20] => readline [21] => Reflection [22] => session [23] => standard [24] => shmop [25] => SimpleXML [26] => mbstring [27] => tokenizer [28] => xml [29] => litespeed [30] => i360 [31] => bcmath [32] => dba [33] => dom [34] => enchant [35] => fileinfo [36] => gd [37] => imagick [38] => imap [39] => intl [40] => ldap [41] => exif [42] => mysqlnd [43] => mysqli [44] => odbc [45] => PDO [46] => pdo_mysql [47] => PDO_ODBC [48] => pdo_pgsql [49] => pdo_sqlite [50] => pgsql [51] => Phar [52] => posix [53] => pspell [54] => snmp [55] => soap [56] => sockets [57] => sysvmsg [58] => sysvsem [59] => sysvshm [60] => tidy [61] => timezonedb [62] => xmlreader [63] => xmlrpc [64] => xmlwriter [65] => xsl [66] => zip ) Both load the same type & number of extensions. I wonder, what is the problem, then?
September 27, 20222 yr comment_186684 Orpheus https://ixnfo.com/kak-ustanovit-i-vklyuchit-mbstring.html
September 27, 20222 yr comment_186685 Orpheus no idea. If i disabled mbstring from command line (phpdismod -v 8.1 -s fpm mbsting) and restart php-fpm, my script return error 500. PHP Fatal error: Uncaught Error: Call to undefined function mb_internal_encoding() in /home/desti/4.7.2.1/test.php:4 You run code via browser or from command line?
October 1, 20222 yr comment_186769 On 9/27/2022 at 1:54 PM, Desti said: You run code via browser or from command line? Browser P.S. Sorry for the late reply! Edited October 1, 20222 yr by Orpheus
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.