Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
ext
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

源码编译定制您的PHP运行环境,开发环境和生产环境均可!

能做什么

  • 一键编译PHP开发环境,包含了一些常用扩展如:redis、yaf、mongodb、swoole。
  • 可扩展行很强,相信您都懂linux哪怕是一点也好,再参考下已经写好的shell脚本,复制一个稍微改改,便可以使用,将节省下的时间去撩妹。

支持环境

CentOS 支持
Ubuntu 支持
Mac 调试中

windows 就老实的用XAMPP或WAMP吧真心不错!

目录分析

├── ext                             PHP扩展
│   ├── mongodb.sh
│   ├── redis.sh
│   ├── swoole.sh
│   ├── yac.sh
│   ├── yaf.sh
│   └── yar.sh
├── libs                            第三方类库
├── nginx-config                    nginx配置文件
│   ├── conf
│   │   └── nginx.conf
│   └── vhosts
│       └── admin.jiabin.cn.conf    提供了一个nginx结合swoole_http_server使用的配置文件
├── php-config                      php配置文件
│   ├── php-fpm.conf
│   ├── php-fpm.d
│   │   └── www.conf
│   └── php.ini
└── tools                           常用的工具方法
|   └── base.sh
├── config.sh                       配置文件
├── init.sh                         初始化脚本
├── install.log                     log
├── nginx.sh                        nginx安装脚本
├── php.sh                          php安装脚本
├── README.md

流程分析

  • config.sh配置相应的信息:比如nginx监听端口、php-fpm监听端口等
  • 安装的程序会读取相应的配置,每个shell脚本(nginx.sh、php.sh、和ext目录下的shell)都可以单独安装,也可以通过init.sh串联起来整套安装。
  • 安装成功会将对应的nginx-config和php-config拷贝到对应的目录,也会根据你在config.sh配置的端口进行更新。
  • 所以你先看下config.sh配置对应的安装目录和开发的端口即可。

使用方法

  • git clone https://github.com/caojiabin2012/compile-php-environment.git
  • cd compile-php-environment
  • bash init.sh
  • 执行浏览器:本机ip/index.php
  • 没有将安装的php添加的环境变量中,因为绝对路径也一样的,如果你有需要可以自己将php的bin路径写到$PATH中即可。

安装失败需要怎么处理

  • 作者已经很努力的调试CentOS和Ubuntu了,将缺少的类库都写到了程序中。在使用中如果您发现还是有遗漏的类库,如果能解决欢迎提交代码,如果不能,欢迎来此提交issue:https://github.com/caojiabin2012/compile-php-environment/issues/new
  • 提交的issue一定要写好系统名称和版本哦!

为何会开发此脚本

  • 每次搭建环境都要花费点时间,不论是源码编译还是使用源安装(yum或apt)。
  • 编译安装相比源优点是可以定制版本,但是需要自己安装依赖库,速度慢,其实各有优缺点。
  • 将自己经常重复的工作,写成一个项目开源出来,帮助自己还能帮助他人,何乐不为。

为什么没见到mysql安装脚本呢

  • 因为生产环境基本不会在本机搭建mysql,平时开发时大家基本都是用测试环境数据库,本地的mysql并不是很重要,以后可能考虑加上。

项目名称由来XxOoEnvironment

compile-php-environment 编译php版本
docker-php-environment     Docker PHP版本(下一个开源项目)
compile-python-environment 编译python版本
docker-python-environment Docker Python版本
compile-go-environment ...
docker-go-environment     ...
... ...

喜欢学习+分享的你可以一起参与进来,90后的我们一起追赶80后吧!

开源协议

  • 第三方类库版权参照对应作者或组织
  • 本人写的没有任何版权欢迎使用

About

Compile and customize a PHP runtime environment

Topics

Resources

Releases

No releases published

Packages

No packages published

Languages

You can’t perform that action at this time.