PhalApi 2.x 开发文档 下载与安装

简介: PhalApi 2.x 与PhalApi 1.x 系列一样,要求PHP >= 5.3.3。

下载与安装

PhalApi 2.x 与PhalApi 1.x 系列一样,要求PHP >= 5.3.3。

快速安装

PhalApi 2.x 版本的安装很简单,有两种方式。

composer一键安装

安装Composer

如果还没有安装 Composer,你可以按 getcomposer.org 中的方法安装。 在 Linux 和 Mac OS X 中可以运行如下命令:

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
AI 代码解读
温馨提示:关于composer的使用,请参考 Composer 中文网 / Packagist 中国全量镜像

安装PhalApi 2.x

使用composer创建项目的命令,可实现一键安装。

$ composer create-project phalapi/phalapi
AI 代码解读

手动下载安装

或者,也可以进行手动安装。首先下载phalapi项目master-2x分支源代码。下载解压后,进行可选的composer更新,即:

$ composer update
AI 代码解读
温馨提示:为提高友好度,phalapi中已带有缺省vendor安装包,从而减轻未曾接触过composer开发同学的学习成本。即便composer安装失败,也可正常运行PhalApi 2.x。

配置

Nginx配置

如果使用的是Nginx,可参考以下配置。

server {
    listen 80;
    server_name dev.phalapi.net;
    root /path/to/phalapi/public;
    charset utf-8;

    location / {
        index index.php;
    }

    # 开启URI路由匹配
    # location / {
    #       try_files $uri $uri/ /?$args;
    # }
    # if (!-e $request_filename) {
    #        rewrite ^/(.*)$ /index.php last;
    # }

    location ~ \.php$ {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass 127.0.0.1:9000;
        #fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; # 根据需要选择配置
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    access_log logs/dev.phalapi.net.access.log;
    error_log logs/dev.phalapi.net.error.log;
}
AI 代码解读

重启Nginx并配置本地HOSTS后,可通过以下链接,访问默认接口服务。

http://dev.phalapi.net
AI 代码解读
温馨提示:推荐将访问根路径指向/path/to/phalapi/public。后续开发文档中,如无特殊说明,均约定采用此配置方式。

Apache配置

如果使用的是Apache,可参考以下配置。目录结构:

htdocs
├── phalapi
└── .htaccess
AI 代码解读

.htaccess内容:

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /

    RewriteCond %{HTTP_HOST} ^dev.phalapi.net$

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d

    RewriteCond %{REQUEST_URI} !^/phalapi/public/
    RewriteRule ^(.*)$ /phalapi/public/$1
    RewriteRule ^(/)?$ index.php [L]
</IfModule>
AI 代码解读

上面配置是针对特定域名的配置,以下是通用配置。

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
</IfModule>
AI 代码解读

XAMPP配置

如果使用的是XAMPP集成环境,只需要将项目源代码phalapi整个目录复制到xampp的htdocs目录下即可。打开XAMPP控制面板并启动Apache后,便可通过以下链接,访问默认接口服务。

http://localhost/phalapi/public/
AI 代码解读

以上不管何种配置,正常情况下,访问默认接口服务可以看到类似这样的输出:

{
    "ret": 200,
    "data": {
        "title": "Hello PhalApi",
        "version": "2.0.1",
        "time": 1501079142
    },
    "msg": ""
}
AI 代码解读

运行效果,截图如下:

至此,安装完毕!

如何升级PhalApi 2.x框架?

在composer的管理下,升级PhalApi 2.x 版本系列非常简单。只需要修改composer.json文件,指定相应的版本即可。PhalApi的框架内核项目在phalapi/kernal,你可以指定版本,也可以跟随最新版本。

例如,当需要指定PhalApi 2.0.1版本时,可以这样配置:

{
    "require": {
        "phalapi/kernal": "2.0.1"
    }
}
AI 代码解读

当需要保持最新版本时,则可以改成:

{
    "require": {
        "phalapi/kernal": "2.*.*"
    }
}
AI 代码解读

这样,当PhalApi 2.x 有版本更新时,只需执行composer更新操作即可。对应命令操作为:

$ composer update
AI 代码解读

至此,升级完毕!

温馨提示:关于composer版本的说明,可参考Composer中文文档 - 包版本

目录
打赏
0
0
0
0
26
分享
相关文章
快速打包、发布和管理应用——AppUploader 工具介绍
快速打包、发布和管理应用——AppUploader 工具介绍
微信小程序如何安装使用第三方包
本文档详细介绍了微信小程序开发中引入和使用第三方包的步骤。
86 2
【微信小程序-原生开发】实用教程01-注册登录账号,获取 AppID、下载安装开发工具、创建项目、上传体验
【微信小程序-原生开发】实用教程01-注册登录账号,获取 AppID、下载安装开发工具、创建项目、上传体验
122 0
从零开发和发布自己的wordpress插件到官方插件库完全指南
wordpress是一款很流行的开源博客程序,全世界有很多网站都在使用wordpress,程序员们也喜欢拿来做自己的技术博客,对于自己不满意的地方,那肯定也需要自己动手来修改了,下面就介绍从开发到发布一个wordpress插件的完整流程
197 0
Apipost下载安装和功能详解
ApiPost = PostMan + Swagger + Mock + Jmeter 后端、前端、测试同时在线编辑,同时在线协作,内容实时同步1.官网地址:https://www.apipost.cn/2.官网支持客户端下载及web版在线调试,可根据自己的需求选择适合自己的使用方式。
400 0
Apipost下载安装和功能详解
超好用iOS管软件iMazing 2.16.6官网下载及2023新增功能
iMazing 2.16.6这是一款非常方便的 iPhone 管理工具,尤其是在升级、降级、越狱之前,做好备份是必不可少的一步,千万别偷懒。有一款用着顺手的iOS管理工具在手边,让数字生活更安心!
275 0
超好用iOS管软件iMazing 2.16.6官网下载及2023新增功能
CleanMyMac2023官方最新版有哪些功能介绍?
电脑系统垃圾太多,影响使用效率,有哪些好用的mac系统垃圾清理工具值得入手呢?小编整理的几款简单好用的分享给大家,需要的拿走,小白必备,mac系统垃圾清理工具分享。
142 0

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等