Yii2:教你一步步写一个微信商城(一)

Allinputs 2019-06-27

本教程主要基于 terry 大神的开源商城 Fecshop,为大家解读 Fecshop 的源码,由于原版商城更多是针对国际业务,因此本教程会适当修改,使其更适合于微信环境。由于商城源码复杂,本教程将长期更新。本人也是边学习边写这份教程,过程中难免会出现错误,还请大家指正。

今天呢主要是搭建开发环境,由于本人比较习惯于在windows上开发,因此环境也是搭建在windows上,具体环境为:
apache2.4+php7.1+mysql5.6+redis3.2+mongodb3.2
如何安装这边就不讲了,网上教程有很多,下面主要讲yii2安装和php扩展安装

步骤一:yii2下载

按照官网安装教程,可以用composer安装,也可以下载压缩包,我个人采用composer安装时10次有9次都特别慢,因此更喜欢下载压缩包安装,这里的版本选择advanced

步骤二:php扩展安装

1、redis扩展
这里找到对应版本,下载DLL解压到php ext文件夹内,在php.ini添加extension=php_redis.dll就大功告成了。
2、mongodb扩展
这里找到对应版本,下载DLL解压到php ext文件夹内,在php.ini添加extension=php_mongodb.dll就大功告成了。
3、重启apache

步骤三:yii2扩展安装

1、yii2-redis扩展
进入yii2 advanced所在文件夹,执行composer require --prefer-dist yiisoft/yii2-redis,我这边每次用composer都特别慢,这里还有另一种方式,到 https://github.com/yiisoft/yi... 下载解压到vendor/yiisoft/yii2-redis,在yiisoft/extension.php中添加

'yiisoft/yii2-redis' =>
    array (
        'name' => 'yiisoft/yii2-redis',
        'version' => '2.0.6',
        'alias' => array (
            '@yii/redis' => $vendorDir . '/yiisoft/yii2-redis',
        ),
    ),

2、yii2-mongodb扩展
进入yii2 advanced所在文件夹,执行composer require --prefer-dist yiisoft/yii2-mongodb,同上述,可以到 https://github.com/yiisoft/yi... 下载解压到vendor/yiisoft/yii2-mongodb,在yiisoft/extension.php中添加

'yiisoft/yii2-mongodb' =>
    array (
        'name' => 'yiisoft/yii2-mongodb',
        'version' => '2.1.0',
        'alias' => array (
            '@yii/mongodb' => $vendorDir . '/yiisoft/yii2-mongodb',
        ),
    ),

步骤四:部署域名

有了上述扩展后,进入yii2 advanced所在文件夹,执行 init 生成初始代码,接下来配置一下本地域名

  1. 找到C:\Windows\System32\drivers\etc\hosts 文件,添加商城的三个端口,后台、移动端(微信)、电脑端

    127.0.0.1  admin.shop.com
     127.0.0.1  m.shop.com
     127.0.0.1  www.shop.com
  2. 找到apache配置文件httpd.conf,找到 Include conf/extra/httpd-vhosts.conf,将前面的#去掉
  3. 找到extra/httpd-vhosts.conf,添加如下内容

    <VirtualHost *:80>
    DocumentRoot "yii2-advanced安装路径\backend\web"
    ServerName admin.shop.com
    ServerAlias admin.shop.com
    </VirtualHost>
    
    <VirtualHost *:80>
    DocumentRoot "yii2-advanced安装路径\frontend\web"
    ServerName www.shop.com
    ServerAlias www.shop.com
    </VirtualHost>
    
    <VirtualHost *:80>
    DocumentRoot "yii2-advanced安装路径\wechat\web"
    ServerName m.shop.com
    ServerAlias m.shop.com
    </VirtualHost>
  4. 重启apache

现在在浏览器访问 admin.shop.com 和 www.shop.com 就可以看到yii2自带的前台和后台了,细心的小伙伴可能已经发现yii2自带的应用并没有wechat,现在我们就给它添加一个

①找到environments文件夹下的index.php,添加标红内容
Yii2:教你一步步写一个微信商城(一)

②分别到 environments\dev 和 environments\prod 复制一份 frontend 文件夹并重命名为 wechat
③到 yii2-advanced 安装目录复制一份 frontend 文件夹并重命名为 wechat,找到 wechat\config\main.php
修改如下内容

Yii2:教你一步步写一个微信商城(一)

④找到 wechat\controllers\SiteController.php,修改命名空间为wechatcontrollers
⑤找到 common\config\bootstrap.php,添加

Yii::setAlias('@wechat', dirname(dirname(__DIR__)) . '/wechat');

⑥找到 wechat\config\main-local.php,修改 cookieValidationKey的值,随便改一两个字母就可

至此,wechat 应用就创建完毕,在浏览器中输入 m.shop.com 就可以访问了,界面和前台界面一样。

总结

以上就是今天的主要内容,通过今天的教程你可以学到

  • yii2扩展安装
  • php扩展安装
  • 本地域名配置
  • yii2应用安装

下次教程正式进入开发过程。

相关推荐