更新为 Zpanel 10.1.0 500 登录时错误


Updated to Zpanel 10.1.0 500 error on login

Running centos 6.4

将 zPanel 更新到 10.1.0 现在在尝试登录时收到 500 错误,日志显示以下错误:

[2013 年 10 月 8 日星期二 02:08:33] [错误] [客户端 94.4.6.3] PHP 通知:未定义的索引:ac_catorder_vc/etc/zpanel/panel/dryden/ctrl/users.class.php 第 67 行

[2013 年 10 月 8 日星期二 02:08:33] [错误] [客户端 94.4.6.3] PHP 通知:未定义的索引:ip在/etc/zpanel/panel/dryden/runtime/sessionsecurity.class.php 第 135 行

[2013 年 10 月 8 日星期二 02:08:33] [错误] [客户端 94.4.6.3] PHP 通知:未定义的索引:HTTP_USER_AGENT 在/etc/zpanel/panel/dryden/runtime/sessionsecurity.class.php 第 126 行

[2013年10月8日星期二 02:08:47] [错误] [客户端94.4.6.3] PHP 致命错误:未捕获的异常"PDOException",消息为"SQLSTATE[42S22]:找不到列:105 ac_passsalt_vc 4/etc/zpanel/panel/inc/init.inc.php:108'Stack trace:'#0/etc/zpanel/panel/inc/init.inc.php(108(: PDOStatement->execute(('#1/etc/zpanel/panel/index.php(18(: require_once('/etc/zpanel/pan...'('#2 {main}' 在/etc/zpanel/panel/inc/init.inc.php 第 108 行中抛出,引用者:http://xx.xxx.xxx/?loggedout

非常感谢任何指导。似乎执行了除 sql 更新脚本之外的所有内容。

他们是我可以独立执行的脚本吗?

我设法让它工作。我在这里发布的内容不是官方的,但它对我有用。从版本 10.0.1 到 10.1.0 似乎遗漏了一些东西。让我们看看我所做的是否能帮助你。

我的环境是 Ubuntu 12,我从版本 10.0.1 到 10.1.0。不过,我遇到了与你相同的错误。

由于更新程序对我不起作用,我下载了源代码以找出版本之间的差异。焦油球可以在这里得到 https://github.com/zpanel/zpanelx/archive/10.1.0.tar.gz。

解压缩后,您将看到一个名为 etc/build/config_packs/ubuntu_12_04/zpanelx-update 的文件夹以及版本 10-0-1、10-0-2 和 10-1-0 的目录。您需要从原始版本开始。我的意思是,如果您要从版本 10.0.1 更新到 10.1.0,则需要使用 10.0.2 和 10.0.1 中的脚本。

让我们按照这个例子。从 10-0-2/sql 文件夹中打开文件panel_update.sql。您将看到类似于以下内容的内容:

/* Update SQL for CentOS 6 ZPanel 10.0.1 to 10.0.2 */
USE `zpanel_core`;
/* Change field length for passwords */
    ALTER TABLE `zpanel_core`.`x_accounts`
    CHANGE COLUMN `ac_pass_vc` `ac_pass_vc` VARCHAR(200) NULL DEFAULT NULL;
/* New setting for turning off CSRF on login form */
INSERT IGNORE INTO `x_settings`(`so_id_pk`,`so_name_vc`,`so_cleanname_vc`,`so_value_tx`,`so_defvalues_tx`,`so_desc_tx`,`so_module_vc`,`so_usereditable_en`) VALUES (117,'login_csfr','Remote Login Forms','false','false|true','Disables CSFR protection on the login form to enable remote login forms.','ZPanel Config','true');
/* Remove and update standard FAQs */
DELETE FROM `zpanel_core`.`x_faqs` WHERE `fq_id_pk` > 0 AND `fq_id_pk` < 18;
INSERT IGNORE INTO `zpanel_core`.`x_faqs` (`fq_id_pk`,`fq_acc_fk`,`fq_question_tx`,`fq_answer_tx`,`fq_global_in`,`fq_created_ts`,`fq_deleted_ts`) VALUES (1,1,'How can I update my personal contact details?','From the control panel homepage please click on the &quot;My Account&quot; icon to enable you to update your personal details.',1,NULL,NULL);
INSERT IGNORE INTO `zpanel_core`.`x_faqs` (`fq_id_pk`,`fq_acc_fk`,`fq_question_tx`,`fq_answer_tx`,`fq_global_in`,`fq_created_ts`,`fq_deleted_ts`) VALUES (2,1,'How do I change my password?','Your ZPanel and MySQL password can be easily changed using the &quot;Change Password&quot; icon on the control panel.',1,NULL,NULL);
INSERT IGNORE INTO `zpanel_core`.`x_faqs` (`fq_id_pk`,`fq_acc_fk`,`fq_question_tx`,`fq_answer_tx`,`fq_global_in`,`fq_created_ts`,`fq_deleted_ts`) VALUES (3,1,'I don&#39;t think one of the services(Apache, MySQL, FTP, etc) are running. Is there any easy way to check?','ZPanel comes with a service monitoring system that checks to make sure all the services are up and running, Simply go to your Control Panel Home and select the module called &quot;Service Status&quot;. From there you will be able to see if any of the services are down or up.',1,NULL,NULL);
INSERT IGNORE INTO `zpanel_core`.`x_faqs` (`fq_id_pk`,`fq_acc_fk`,`fq_question_tx`,`fq_answer_tx`,`fq_global_in`,`fq_created_ts`,`fq_deleted_ts`) VALUES (4,1,'How can I set my domain to work with my ZPanel Account?','To setup up a domain with ZPanel first thing you need to do is go &quot;Domains&quot; and add your to the list. Next you need to set the Name Server on your Domain Registrar to match that of your host. This information can be obtained by contacting your host.',1,NULL,NULL);
INSERT IGNORE INTO `zpanel_core`.`x_faqs` (`fq_id_pk`,`fq_acc_fk`,`fq_question_tx`,`fq_answer_tx`,`fq_global_in`,`fq_created_ts`,`fq_deleted_ts`) VALUES (7,1,'How can I create a MySQL Database?','To create a MySQL database simply go to the section of the panel called &quot;Database Management&quot; and select the module called &quot;MySQL Databases&quot; from here you will easily be able to add and manage databases on your account.',1,NULL,NULL);
INSERT IGNORE INTO `zpanel_core`.`x_faqs` (`fq_id_pk`,`fq_acc_fk`,`fq_question_tx`,`fq_answer_tx`,`fq_global_in`,`fq_created_ts`,`fq_deleted_ts`) VALUES (8,1,'What is phpMyAdmin?','phpMyAdmin is an open source tool intended to handle the administration of MySQL databases. It can perform various tasks such as creating, modifying or deleting databases, tables, fields or rows or executing SQL statements',1,NULL,NULL);
INSERT IGNORE INTO `zpanel_core`.`x_faqs` (`fq_id_pk`,`fq_acc_fk`,`fq_question_tx`,`fq_answer_tx`,`fq_global_in`,`fq_created_ts`,`fq_deleted_ts`) VALUES (9,1,'How do I create FTP Accounts?','You can create FTP accounts by going to &quot;FTP Accounts&quot; from their you can add accounts and manage quotas and directories. ',1,NULL,NULL);
INSERT IGNORE INTO `zpanel_core`.`x_faqs` (`fq_id_pk`,`fq_acc_fk`,`fq_question_tx`,`fq_answer_tx`,`fq_global_in`,`fq_created_ts`,`fq_deleted_ts`) VALUES (10,1,'How to Password Protect Directories?','Go to Advanced and select the module &quot;Password Protect Directories&quot; From here you can generate .htaccess files to lock down directories on your site to only people with a login and password.',1,NULL,NULL);
INSERT IGNORE INTO `zpanel_core`.`x_faqs` (`fq_id_pk`,`fq_acc_fk`,`fq_question_tx`,`fq_answer_tx`,`fq_global_in`,`fq_created_ts`,`fq_deleted_ts`) VALUES (11,1,'How do I create an E-Mail Account?','Go to the Mail section of ZPanel and select the module called &quot;Mailboxes&quot;, from here you can create E-Mail account for each domain setup on your account. You can also reset passwords to previously created accounts.',1,NULL,NULL);
INSERT IGNORE INTO `zpanel_core`.`x_faqs` (`fq_id_pk`,`fq_acc_fk`,`fq_question_tx`,`fq_answer_tx`,`fq_global_in`,`fq_created_ts`,`fq_deleted_ts`) VALUES (12,1,'How do I create a Mail Alias?','Go to the Mail section of ZPanel and select the module called &quot;Aliases&quot;, from here you can create Alias E-Mail accounts for each previously created E-Mail account. All mail sent to the alias will be delivered to the master e-mail account.',1,NULL,NULL);
INSERT IGNORE INTO `zpanel_core`.`x_faqs` (`fq_id_pk`,`fq_acc_fk`,`fq_question_tx`,`fq_answer_tx`,`fq_global_in`,`fq_created_ts`,`fq_deleted_ts`) VALUES (13,1,'How can I create a Mailing List?','Mailing lists can be setup by going to the Mail section of ZPanel and select the module called &quot;Distribution Lists&quot;, from here you can create Mailing lists by creating an E-mail Account. ',1,NULL,NULL);
INSERT IGNORE INTO `zpanel_core`.`x_faqs` (`fq_id_pk`,`fq_acc_fk`,`fq_question_tx`,`fq_answer_tx`,`fq_global_in`,`fq_created_ts`,`fq_deleted_ts`) VALUES (14,1,'How do I use Mail Forwards?','Go to the Mail section of ZPanel and select the module called &quot;Forwards&quot;, from here you can create E-Mail address on your domains that will forward to other E-Mail addresses that are on different servers like &quot;G-Mail, Yahoo, and MSN&quot;. ',1,NULL,NULL);
INSERT IGNORE INTO `zpanel_core`.`x_faqs` (`fq_id_pk`,`fq_acc_fk`,`fq_question_tx`,`fq_answer_tx`,`fq_global_in`,`fq_created_ts`,`fq_deleted_ts`) VALUES (15,1,'What are Subdomains?','A subdomain combines a unique identifier with a domain name to become essentially a &quot;domain within a domain.&quot; The unique identifier simply replaces the www in the web address. Yahoo!, for example, uses subdomains such as mail.yahoo.com and music.yahoo.com to reference its mail and music services, under the umbrella of www.yahoo.com. They can be created by using the Subdomain module in the Domains section. You can assign directories for each sub domain from the module.',1,NULL,NULL);
INSERT IGNORE INTO `zpanel_core`.`x_faqs` (`fq_id_pk`,`fq_acc_fk`,`fq_question_tx`,`fq_answer_tx`,`fq_global_in`,`fq_created_ts`,`fq_deleted_ts`) VALUES (16,1,'How can I view how much Data I have used?','You can view how much data you have used by accessing the &quot;Usage Viewer&quot; under the Account Information section of ZPanel. It displays account information in different formats. It displays Data Usage, Domain Usage, Bandwidth Usage, MySQL Usage, and much more.',1,NULL,NULL);
INSERT IGNORE INTO `zpanel_core`.`x_faqs` (`fq_id_pk`,`fq_acc_fk`,`fq_question_tx`,`fq_answer_tx`,`fq_global_in`,`fq_created_ts`,`fq_deleted_ts`) VALUES (17,1,'How can I access Webmail?','Go to the Mail section of ZPanel and select the module called &quot;Webmail&quot;, from here you can login to your E-Mail account and view and create messages. ',1,NULL,NULL);
/* Force DNS and Apache rewrite configs */
UPDATE `zpanel_core`.`x_settings` SET `so_value_tx`=',0' WHERE `so_name_vc`='dns_hasupdates';
UPDATE `zpanel_core`.`x_settings` SET `so_value_tx`='true' WHERE `so_name_vc`='apache_changed';

/* Update the ZPanel database version number */
UPDATE  `zpanel_core`.`x_settings` SET  `so_value_tx` =  '10.0.2' WHERE  `so_name_vc` = 'dbversion';

将其应用于panel_core数据库。应用后,转到文件夹 10-1-0 并从文件夹 10-1-0/sql 中获取panel_update.sql的文件。内容类似于:

/* Update SQL for Ubuntu 12.04 ZPanel 10.0.2 to 10.0.3 */
USE `zpanel_core`;
UPDATE `zpanel_core`.`x_settings` SET `so_value_tx`='/var/zpanel/logs/zpanel.log' WHERE `so_name_vc`='logfile';
ALTER TABLE  `x_accounts` ADD  `ac_catorder_vc` VARCHAR(255) DEFAULT NULL AFTER  `ac_passsalt_vc`;
/* split crontab into seperate storage */
DELETE FROM `x_settings` WHERE `so_name_vc` = 'cron_reload';
INSERT INTO `x_settings`(`so_name_vc`,`so_cleanname_vc`,`so_value_tx`,`so_defvalues_tx`,`so_desc_tx`,`so_module_vc`,`so_usereditable_en`) VALUES ('cron_reload_command','Cron Reload Command','crontab',NULL,'Crontab binary in Linux Only','Cron Config','true');
INSERT INTO `x_settings`(`so_name_vc`,`so_cleanname_vc`,`so_value_tx`,`so_defvalues_tx`,`so_desc_tx`,`so_module_vc`,`so_usereditable_en`) VALUES ('cron_reload_path','Cron Reload Path','/var/spool/cron/crontabs/www-data',NULL,'Cron reload path in Linux Only','Cron Config','true');
INSERT INTO `x_settings`(`so_name_vc`,`so_cleanname_vc`,`so_value_tx`,`so_defvalues_tx`,`so_desc_tx`,`so_module_vc`,`so_usereditable_en`) VALUES ('cron_reload_flag','Cron Reload Flags','-u',NULL,'Cron reload command flags in Linux Only','Cron Config','true');
INSERT INTO `x_settings`(`so_name_vc`,`so_cleanname_vc`,`so_value_tx`,`so_defvalues_tx`,`so_desc_tx`,`so_module_vc`,`so_usereditable_en`) VALUES ('cron_reload_user','Cron Reload User','www-data',NULL,'Cron reload apache user in Linux','Cron Config','true');
/* Reset theme for all users due to new theme which breaks older themes. */
UPDATE `x_accounts` SET `ac_usertheme_vc` = 'zpanelx';
/* Drop the redunent x_mysql table */
DROP TABLE IF EXISTS `zpanel_core`.`x_mysql`;
/* Adds additonal shared domains, 'autono.de' and 'zphub.com' of which users can register at bindhub.com */
UPDATE `x_settings` SET `so_value_tx` = IFNULL(CONCAT(`so_value_tx`, ',autono,zphub'), ",autono,zphub") WHERE `so_name_vc` = 'shared_domains';
/* Update the ZPanel database version number */
UPDATE  `zpanel_core`.`x_settings` SET  `so_value_tx` =  '10.1.0' WHERE  `so_name_vc` = 'dbversion';

此外,您还可以运行以下命令更新 zadmin 密码:

/etc/zpanel/panel/bin/setzadmin <newpass>

这 3 个"补丁"应该足以让您登录。

不幸的是,我不知道还缺少什么。我能够操作该工具,并且在高级分析中,一切听起来都不错。如果我发现其他任何东西,我会继续使用它并在此处更新。