常见问题

域名更改

  • 问题描述
    更换域名后,导致与ocs或erp联通后,收不到ocs或erp的操作请求。
    
    
  • 导致此问题的原由
    名词解释:
    1、shopex_id ———— 在ShopEx商家用户中心申请的一个ShopEx用户id
    2、证书号(certi_id)———— 由shopex_id 和域名一起生成的一个唯一标识号(此证书号码需要随着域名的更改而重新生成,生成方式请看下方【重新获取证书号】)
    3、node_id ———— 由certi_id和域名生成的一个唯一标示
    
    具体阐述:
    当域名改变,shopex用户中心还存的是旧的域名,当与ocs联通后,矩阵会根据node_id去用户中心获取域名,这时域名不是当前使用的域名,ecstore就无法获取ocs的操作请求。
    
    解决方法【重新获取证书号】:
    用ecstore提供的"清除"与用户中心的旧关系,重新建立关系,重新绑定ocs以保证ecstore的联通功能恢复正常。
    
  • 解决问题的方案步骤
    1. 解除ecstore与ocs或erp的绑定关系
    2. 清除与shopex用户中心的关系数据(以下1、2两种方法)
      1、能够进入后台,对后台控制面板能够操作的用户,请进行以下操作:
          ecstore后台 > 控制面板 > 清除中心关系数据 > "清除"按钮
      2、 不能进入后台的用户,请使用cmd执行以下命令来操作:
          php app/base/cmd cleanunicom
      2、如果ecstore的版本低于1.2.19,请用以下方式重新生成证书号
          rm config/certi.php 或 mv config/certi.php config/certi.php.bak
      
    3. 登录后台输入shopex_id,重新建立与用户中心的关系,并重新绑定ocs或erp

服务器迁移

  • 问题描述
    服务器迁移后,服务器的配置可能与原来有异同,导致ecstore的某些功能失去作用,例如:绑定ocs、图片的保存等等...
    
  • 解决此问题的方案步骤
    1. cmd执行以下命令,查看当前服务器环境的缺陷
      php app/base/cmd check_environment
      
    2. 依照cmd的返回结果,调整配置
    3. 根据以上域名改变的问题解决步骤,重新建立shopex用户中心的联系

激活码无效

  • 问题描述
    访问后台时,有时会经常提示激活码失效的问题,导致不能进入后台管理后台
    
  • 做检测
    • mysql 是否启动,mysql运行是否正常,mysql InnoDB是否正常使用
    • 多台web机都需要有对外的访问权限即(fsockopen请求外网可以正常)
    • 网络是否稳定
    • 检测硬盘是否可以写入(命令 touch test可以测试)
    • 硬盘空间是否足够,内存空间是否足够
    • 检测nginx的伪静态配置是否合格,
          如:www.qinqinni.com/index.php/openapi/check/handshake
      
          访问如上地址,看看返回结果是一串数字加字母的字符串  还是您的网站前台,
          如果是网站前台,那证明“伪静态”配置有问题,请查看文档重新配置:http://www.ec-os.net/single_deployment/deploygment_one/static.html
      
          具体地址公式如下:
          网站域名/index.php/openapi/check/handshake
      
      
    • fsockopen 是否可以正常使用(以下为实例:)
            <?php
            $fp = fsockopen("service.shopex.cn", 80, $errno, $errstr, 30);
            if (!$fp) {
                echo "$errstr ($errno)<br />\n";
            } else {
                $out = "GET / HTTP/1.1\r\n";
                $out .= "Host: service.shopex.cn\r\n";
                $out .= "Connection: Close\r\n\r\n";
                fwrite($fp, $out);
                while (!feof($fp)) {
                    echo fgets($fp, 128);
                }
                fclose($fp);
            }
            exit;
      
  • 为了更能方便的排查激活码失效和队列运行问题,从ecstore2.0.32版本起,用以下cmd命令进行检测,帮助快速定位问题
            php app/base/cmd help -v
    
    

    会出现如下内容:

       dev:syscheck allcheck                   系统环境检测
            --library / -l                函数及扩展库
            --database / -d               mysql数据库
            --harddiskspace / -h          硬盘空间
            --wpermissions / -w           目录和文件的读取权限
    
    
    然后输入相应的命令,就可以排查对应的问题是否有异常
        php app/base/cmd dev:syscheck allcheck   检测所有内容
        php app/base/cmd dev:syscheck allcheck -l 检测函数及扩展库
        php app/base/cmd dev:syscheck allcheck -d 检测mysql是否正常
        php app/base/cmd dev:syscheck allcheck -h 检测硬盘是否有写入空间
        php app/base/cmd dev:syscheck allcheck -w 检测常用目录和文件的写入权限
    
  • 解决方法
    • 重启mysql
    • 重新配置服务器,看看域名解析服务器是否正常(fsockopen函数的使用)
    • data目录和/tmp目录必须有写入权限
    • 硬盘空间必须充足
    • 发送config/certi.php文件至商派服务邮箱,商派需要确认你的域名
  • 注意
    • 如果修改服务器端口号,也会导致激活码失效,访问时请在域名后加上端口号。

测试环境激活码配置

    • 版本限定
          ecstore2.0版本必须大于等于 2.0.20
      
    • 配置方法
          1、在ecstore/config/config.php中搜索 #define('DEV_CHECKDEMO', true); ,删除前面的#号
          2、在ecstore/config/config.php中添加 define('DEV_CHECKDEMO', true)
      

ecstore2.0 导入导出

  • 需要配置正确的ftp
  • ftp需要读写权限
  • 服务器的/tmp目录必须有读写权限

chinapay 报错

  • 如果安装了银联在线后报出错误,请检测PHP是否开启bcmath函数 和 netpayclient.php文件是否有过修改

PHP5.6环境下运行系统

  • 在安装完成后,请去除文件路径为/config/config.php中的define('EC_PHP_VERSION','php5.6');前的注释符号(#)。

沪ICP备05002918号

© 2003-2017 ShopEx,Inc.All rights reserved.