php-将Concrete5从5.5.2.1升级到5.6.x的问题
作者:互联网
我目前正在将一个非常老的网站从5.4.x更新到5.6.3.3.到目前为止,我已经能够在本地升级到5.5.2.1,没有问题.
但是从5.5.2.1升级到5.6.x会引起很多问题.我尝试直接更新到后端建议的5.6.3.3,以及5.6.0、5.6.0.1和5.6.0.2,但没有运气.
问题是,当我单击“下载”时,Concrete5下载5.6.3.2.不是广告的5.6.3.3.3.下载完成后,什么都没有发生.我无法单击更新,只能再次单击下载按钮.但是,Concrete5确实下载了5.6.3.2更新.
我尝试手动运行升级脚本.手动升级脚本返回以下消息:
“Upgrade concrete5
Your site is already up to date! You should remove this file for
security. Back to Home
Click here if you would like to re-run this
script.The current version of Concrete5 is 5.5.2.1.”
因此,我单击并将“?force = 1”添加到URL.返回:
“Upgrade to 5.5.2.1 complete!”
这就是在site.php中.如果删除该文件并按照本指南的建议(http://www.concrete5.org/documentation/how-tos/developers/manually-upgrade-concrete5/)运行它,则只会出现空白页面,并且无法手动运行升级脚本.我尝试了指南中提到的两种方法都没有碰到运气,并且还尝试了5.6的不同版本.
因此,我的下一步是手动下载5.6.3.3,并将其放置在updates文件夹中.现在更新页面返回:
“Install Local Update
Make sure you backup your database before updating. Several updates
are available. Please choose the desired update from the list below.CURRENT VERSION
5.5.2.1
5.6.0.2
5.6.3.2
5.6.3.3″
选择其中任何一个都会返回空白页,因为脚本会使用新的目录名更改site.php文件.就像在脚本更新数据库之前更改目录名一样,因此什么也没有发生.该过程停止,所有页面均为空白.
现在,这就是我遇到的问题.现在,我不知道如何启动更新脚本.任何帮助表示赞赏!
技术信息:
我正在使用具有以下内容的本地服务器(MAMP):
的PHP:5.5.18
的MySQL:5.5.38
阿帕奇:2.2.29
缓存:完全关闭
漂亮的网址:已关闭
环境信息:
concrete5版本
5.5.2.1
混凝土5包装
数据库区分大小写迁移(1.1.2),扩展形式(2.4).
concrete5替代
块/ autonav,块/ catalogue_item,块/google_map、jobs/index_search.php.DONOTUSE,语言/da_DK、libraries/request.php,主题/ compower-theme
网络服务器上的软件
Apache / 2.2.29(Unix)mod_fastcgi / 2.4.6 mod_wsgi / 3.4 Python / 2.7.8 PHP / 5.5.18 mod_ssl / 2.2.29 OpenSSL / 0.9.8zd DAV / 2 mod_perl / 2.0.8 Perl / v5.20.0
网络服务器API
apache2handler
PHP版本
5.5.18
PHP模块
apache2handler,bcmath,bz2,日历,Core,ctype,curl,date,dom,ereg,exif,fileinfo,filter,ftp,gd,gettext,hash,iconv,imap,intl,json,ldap,libxml,mbstring,mcrypt, mysql,mysqli,openssl,pcre,PDO,pdo_mysql,pdo_pgsql,pdo_sqlite,pgsql,Phar,posix,反射,会话,SimpleXML,soap,套接字,SPL,sqlite3,标准,令牌生成器,wddx,xml,xmlreader,xmlwriter,xsl, yaz,zip,zlib.
PHP设置
> log_errors_max_len-1024
> max_execution_time-5
> max_file_uploads-20
> max_input_nesting_level-64
> max_input_time-60
> max_input_vars-1000
> memory_limit-128M
> post_max_size-128M
> sql.safe_mode-关闭
> upload_max_filesize-128M
> ldap.max_links-无限
> mysql.max_links-无限
> mysql.max_persistent-无限
> mysqli.max_links-无限
> mysqli.max_persistent-无限
> pcre.backtrack_limit-1000000
> pcre.recursion_limit-100000
> pgsql.max_links-无限
> pgsql.max_persistent-无限
> session.cache_limiter-nocache
> session.gc_maxlifetime-7200
> soap.wsdl_cache_limit-5
解决方法:
通过检查PHP错误日志可以更好地识别这种情况下的问题(这里的提示是尝试升级后出现白屏).错误是
PHP Fatal error: Call to undefined method Request::hasCustomRequestUser() in /bla/bla/bla/concrete/core/models/user.php on line 177
解决的办法是删除[root] /libraries/request.php文件,然后手动重新启动升级,使用http://site/index.php/tools/required/upgrade/
整个解决方案可以找到here.
标签:concrete,concrete5,php 来源: https://codeday.me/bug/20191028/1952420.html