win7系统搭建PHP+Mysql+Apache环境+部署ecshop项目

时间:2021-08-04 20:30:40
安装环境背景:Win7 x64位系统,搭建PHP+MySQL+Apache环境,实现ECshop项目开发。
1、下载php最新安装包php-7.0.10RC1-Win32-VC14-x64; 提示:需要vc++14 运行库 才能运行php.exe
2、下载并安装mysql,用户名root;密码root。这里不作过多说明;
3、下载Apache_HTTP_Server_2.4.12_JiSuXia,解压即可,运行httpd.exe会报错;修改conf/httpd.conf文件;
主要注意以下几点(安装文件目录中间不要携带空格):
       3.1、 Define SRVROOT "D:\httpd"  ServerRoot "${SRVROOT}" 设置默认路径:SRVROOT “D:/...”
       3.2、设置路径(绝对路径),例如:LoadModule actions_module  D:/httpd/modules/mod_actions.so
win7系统搭建PHP+Mysql+Apache环境+部署ecshop项目
 3.3、需要注意3.1设置的 SRVROOT 路径在配置文件中的引用${ SRVROOT}
4、以上步骤就准备好了编译php文件的环境,但是apache和php还没有完全配置正确,接下来需要配置两边的配置文件;
  •     4.1、Apache配置httpd.conf文件,在conf文件最下添加如下配置信息,主要说明:PHPIniDir 指向php安装目录;LoadModule加载php运行#BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL  
  • #END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL 
  • #php_flag display_errors on  
  • #php_value error_reporting 2039  
  • #END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL 
     4.2、复制php安装目录下的php.ini-development文件,更名:php.ini 并编辑,设置
extension_dir <绝对路径>= "D:/php7/ext" and  date.timezone = prc;去掉下图的注释即可;php_mysql.dll
win7系统搭建PHP+Mysql+Apache环境+部署ecshop项目
5、OK,以上php+mysql+apache环境已经搭建起来了。接下来下载ecshop源码包;解压只需upload部分;
httpd启动服务会默认打开项目文件htdocs,将解压的upload放置htdocs目录下并更名ecshop即可;
6、cmd命令窗口 添加httpd.exe服务到services列表,先cd到apache/bin目录: httpd.exe -k install
7、 http://localhost:80/ecshop/index.php 即可安装部署ecshop项目;sc delete 服务名<删除services服务>
8、安装ecshop到第二步检查环境,提示:mysql不支持、jpg不支持(涉及ecshop文件lib_installer、cls_image、cls_ecshop)top上方提示:lib_installer提示第31行: return cls_image::gd_version();  Non-static gd_version(),在php语法中:: 运算需要设置静态方法;网上找到解决方案:置换这一块内容;我没有成功!是在cls_image文件中将gd_version()方法申明static静态方法;jpg不支持是在lib_installer $jpeg_enabled = ($gd_info[' JPG Support'] 改成  $jpeg_enabled = ($gd_info[' JPEG Support'];
9、以上问题,在网上找答案均未成功!
Strict Standards: Non-static method cls_image::gd_version() should not be called statically in E:\web\shopex\includes\lib_base.php on line 346
PHP 5.3版本以上会出现这个错误。
在346行里面,发现gd_version()方法未声明静态static,所以会出错:
return cls_image::gd_version();
改成:
$p = new cls_image();
return $p->gd_version();
目录权限检测 一片红 不可写  是ecshop项目目录权限不够 chmod -R 777 ecshop 即可

10、下载xampp软件集成php+tomcat+apache+mysql;一键安装,ecshop没有报错!
http://localhost:80/ecshop/index.php 安装完成!数据库mysql+管理员 xup2012+商品种类+关闭留言验证码;
http://localhost/ecshop/admin  后台管理登录
11、集成的mysql+tomcat,想要把原来的安装的软件全部复制到xampp对应的mysql+tomcat目录;
注意tomcat的环境变量,改变路径;mysql需要注意保留C:\ProgramData\MySQL\MySQL server 5.5\data这些数据;
在mysql/bin目录下修改basedir=“D:\xampp\MySQL\”及datadir=“C:\ProgramData\MySQL\MySQL server 5.5\data”

12、Ecshop 2.7 报错原因是cls_template.php在php高版本5.3以上导致的:
  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead ....line:288编辑找到cls_template.php页面修改第288行,换成下面这还代码:return preg_replace_callback("/{([^\}\{\n]*)}/", function($r) { return $this->select($r[1]); }, $surce
  • Strict Standards: Only variables should be passed by reference in D:\xampp...7C0D8828A2FA23C669A5614F73F3AE8A