## 环境要求 >[success] 必须的 - PHP 版本 >= 5.4 - Swoole 扩展 >= 1.9.5 - mbstring 扩展 >[success] 可选的 - Composer (修改一级目录需要) - gd 扩展 (Image组件需要) - pdo 扩展 (Pdo组件需要) - redis 扩展 (Redis组件需要) - curl 扩展 (Http类需要) ## 环境搭建 ### 1. 安装 Swoole 扩展 pecl 在 php/bin 目录,国内 pecl 安装 swoole 有时很慢,如果无法忍受,可选择 [编译安装](https://wiki.swoole.com/wiki/page/6.html)。 ~~~shell $> pecl install swoole ~~~ ### 2. 安装 MixPHP 一键下载,GitHub 有时下载很慢,命令行会报错,多试几次即可。 ```shell $> php -r "copy('https://raw.githubusercontent.com/mixstart/mixphp/master/download.php', 'download.php');include 'download.php';" ``` 也可以选择使用 [composer](https://www.phpcomposer.com/) 安装。 ```shell composer create-project mixstart/mixphp --prefer-dist ``` 入口文件安装至 `/usr/local/bin`,(可选,不安装可直接执行入口文件)。 ```shell $> cd /data/mixphp-master $> chmod 777 install.sh $> ./install.sh ``` ### 3. 确认安装成功 启动 mix-httpd 服务器。 >[info] - 请使用 root 账号启动 mix-httpd。 > - 初次部署建议不使用 `-d` 参数,这样能方便发现目录权限不足,路径不对等系统级错误问题。 ~~~shell $> mix-httpd service start -d ~~~ 访问测试: ~~~shell $> curl http://127.0.0.1:9501/ Hello World ~~~ 如果显示 "Hello World" 的欢迎语那就表示 MixPHP 已经正常运行。 ### 4. 增加 Nginx 反向代理 ~~~shell server { server_name www.test.com; listen 80; root /data/mixphp/apps/index/public/; index index.html; location / { proxy_http_version 1.1; proxy_set_header Connection "keep-alive"; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; if (!-e $request_filename) { proxy_pass http://127.0.0.1:9501; } } } ~~~ >[info] 在 MixPHP 中通过读取 \Mix::app()->request->header('x-real-ip') 来获取客户端的真实IP。 ## Swoole IDE 自动补全 这个不是必须安装的,只是能方便在需要写一些原生 Swoole 时,能让 IDE 自动补全,很方便的一个工具,推荐安装。 [>> 到 GitHub 下载 swoole-ide-helper.phar <<](https://github.com/mixstart/swoole-ide-helper.phar)