环境:
  Windows7 64位
  php-7.0.19
  php-swoole-1.9.15
  php-yac-2.0.2
  php-redis-3.1.2
  php-mongodb-1.2.10

遇坑:

  Cygwin: 不能默认使用 Windows 自带的 mingw git,否则报"fatal: Unable to create temporary file: Result too large",需要使用 Cygwin 中的 Git 软件包。

  

1.安装 Cygwin

  下载: https://cygwin.com/setup-x86_64.exe

  安装: 直接下一步到镜像选择界面,如果没有 163 镜像,则填写 http://mirrors.163.com/cygwin/,并点击 Add,选择使用 163 镜像。

  cygwin 需要安装软件包如下,使用 search 搜索安装。

gcc: Devel > gcc*
pcre: Text > pcre
pcre-devel: Libs > libpcre-devel
autoconf: Perl Default > perl-Config-AutoConf
wget: Web > wget
git: Devel > git
**********************************************************************
注意此处必须要装 Git,不能默认使用 Windows 下 mingw 版本的 Git
**********************************************************************
php: Interpreters, PHP > php
php-扩展名: PHP > php-扩展名
*****************************************************************************************************************************
使用这种方式安装完后不必修改php.ini(已在 /etc/php.d/xxx.ini 中)
但是如果是自己手动编译安装的扩展,需要修改php.ini
必要扩展 php-ctype、php-curl、php-gd、php-json、php-mbstring、php-mcrypt、
php-pdo_mysql、php-phar、php-zip、php-posix、php-tokenizer、php-xmlwriter
*****************************************************************************************************************************

**以下都是在 Cygwin Terminal 中执行**

2.手动编译安装 PHP 扩展(Cygwin 中没有提供安装包)。

  swoole: https://codeload.github.com/swoole/swoole-src/tar.gz/v1.9.15
  yac: https://github.com/laruence/yac/archive/yac-2.0.2.tar.gz
  phpredis: http://101.96.10.63/pecl.php.net/get/redis-3.1.2.tgz
  mongodb: http://pecl.php.net/get/mongodb-1.2.10.tgz

  同一套安装流程

phpize
./configure
make && make install

  注意: 编译安装的扩展需要修改 /etc/php.ini,加入扩展配置。如下:

extension=yac.dll; #注意: 此处不像 Windows 中有 "php_" 前缀,且后缀应为 .dll,

3.安装 composer

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer

4.下载 php-msf 的 installer.php

wget https://raw.githubusercontent.com/pinguo/php-msf-docker/master/installer.php 或者 wget https://cdn.rawgit.com/pinguo/php-msf-docker/214fe1e2/installer.php

5.为避免手动输入配置错误,直接修改 installer.php 的配置

  1).添加配置

$_ENV['HOME'] = '/home/Administrator'; //配置用户的家目录

  2).修改配置

$defaultSystemName = 'dealer'; //项目名
$defaultApplicationDir = '/cygdrive/e/code/php-msf/'; //项目路径
$defaultPort = ; //监听端口

5.执行 php installer.php 完成 php-msf 的安装搭建。

6.一个控制终端运行服务

php server.php

7.另一个控制终端测试服务

curl http://127.0.0.1:8090/Welcome

8.可能出现的异常情况

  1).设置 ~/.bashrc 中的MSF_ENV 无效,$_ENV 为空。

    解决: 修改 php.ini,variables_order 的值加上 "E"。比如 "EGPCS";

后续:
  为方便在 Cygwin Terminal 中直接安装软件包,可以使用 apt-cyg,安装方法如下:

wget https://raw.githubusercontent.com/transcode-open/apt-cyg/master/apt-cyg -P /usr/bin/
chmod a+x /usr/bin/apt-cyg

  安装示例:

apt-cyg install php-mbstring

【完】

PHP-Windows下搭建PHP-MSF环境【原创】的更多相关文章

  1. Windows下搭建Git开发环境

    Windows下搭建Git开发环境主要有以下三种方法: 1,VS,vs2013和vs2015中已经集成了git插件了 2,msysGit+TortoiseGit 3,msysGit+SourceTre ...

  2. [转载]在Windows下搭建Android开发环境

    http://jingyan.baidu.com/article/bea41d437a41b6b4c51be6c1.html 在Windows下搭建Android开发环境 | 浏览:30780 | 更 ...

  3. 【原创】windows下搭建vue开发环境+IIS部署

    [原创]win10下搭建vue开发环境  如果要转发,请注明原作者和原产地,谢谢! 特别说明:下面任何命令都是在windows的命令行工具下进行输入,打开命令行工具的快捷方式如下图:     详细的安 ...

  4. windows下搭建vue开发环境+IIS部署

    原创]win10下搭建vue开发环境  https://www.cnblogs.com/ixxonline/p/6007885.html 特别说明:下面任何命令都是在windows的命令行工具下进行输 ...

  5. Windows下搭建PHP开发环境

    PHP集成开发环境有很多,如XAMPP.AppServ......只要一键安装就把PHP环境给搭建好了.但这种安装方式不够灵活,软件的自由组合不方便,同时也不利于学习.所以我还是喜欢手工搭建PHP开发 ...

  6. (一)Windows下搭建PHP开发环境及相关注意事项

    PHP集成开发环境有很多,如XAMPP.AppServ......只要一键安装就把PHP环境给搭建好了.但这种安装方式不够灵活,软件的自由组合不方便,同时也不利于学习.所以我还是喜欢手工搭建PHP开发 ...

  7. [转]Windows下搭建PHP开发环境

    原文:http://www.cnblogs.com/pharen/archive/2012/02/06/2340628.html PHP集成开发环境有很多,如XAMPP.AppServ......只要 ...

  8. windows下搭建vue开发环境+IIS部署 [转]

    特别说明:下面任何命令都是在windows的命令行工具下进行输入,打开命令行工具的快捷方式如下图:     详细的安装步骤如下: 一.安装node.js 说明:安装node.js的windows版本后 ...

  9. Windows下搭建PHP开发环境-WEB服务器

    PHP集成开发环境有很多,如XAMPP.AppServ......只要一键安装就把PHP环境给搭建好了.但这种安装方式不够灵活,软件的自由组合不方便,同时也不利于学习.所以我还是喜欢手工搭建PHP开发 ...

  10. windows下搭建vue开发环境实践

    Vue.js是一套构建用户界面的 "渐进式框架".与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计.Vue 的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已 ...

随机推荐

  1. Direct I/O,Synchronous I/O的概念

    Direct I/O概念: Direct I/O is a way to avoid entire caching layer in the kernel and send the I/O direc ...

  2. Android 资源混淆 AndResGuard MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  3. Sonar本地环境搭建

    一个新项目准备上线提测了,为了在提测之前做一下代码走查,同时了解项目目前的质量情况,就在本地搭建了一套sonar环境.搭建的过程中遇到了很多问题,sonar官方已不再维护Eclipse的svn插件,所 ...

  4. Android -- Property Animation

    3.0以前,android支持两种动画模式,tween animation,frame animation,在android3.0中又引入了一个新的动画系统:property animation,这三 ...

  5. Android -- Canvas java.lang.UnsupportedOperationException

    干货 java.lang.UnsupportedOperationException at android.view.GLES20Canvas.clipPath(GLES20Canvas.java:2 ...

  6. 理解TensorFlow的Queue

    https://www.jianshu.com/p/d063804fb272 这篇文章来说说TensorFlow里与Queue有关的概念和用法. 其实概念只有三个: Queue是TF队列和缓存机制的实 ...

  7. Centos安装gcc及g++

    Centos支持yum安装,安装软件一般格式为yum install .......,注意安装时要先成为root用户. 按照这个思路,我想安装过程如下: 安装gcc:yum install gcc 安 ...

  8. RateLimiter 限流

    @RestControllerpublic class RateLimiterController { private RateLimiter rateLimiter = RateLimiter.cr ...

  9. OpenGL ES 3.0片段着色器(四)

    片段着色器流程图 片段着色器(fragment shader)实现了一个通用的可编程操作片段的方法.片段着色器执行由 光栅化生成的每个片段. • Shader program(着色器程序)—片段着色器 ...

  10. javascript的冒泡排序, 快速排序, 选择排序, 插入排序

    冒泡排序, 最经典的排序, 把比较大的数字往后放, 和选择排序恰恰相反: <!DOCTYPE html> <html lang="en"> <head ...