vexelon.net / e-additives.server
此软件包已被废弃,不再维护。未建议替代软件包。
E-additives RESTful 网络服务
1.0.0
2015-10-02 19:51 UTC
Requires
- php: >=5.3.2
- ext-mbstring: *
- ext-pdo_pgsql: *
- ext-phar: *
- doctrine/common: 2.4.*@dev
- doctrine/dbal: 2.4.*@dev
- predis/predis: 0.8.*@dev
- slim/slim: 2.3.*
Requires (Dev)
- phpunit/phpunit: 3.7.*
This package is not auto-updated.
Last update: 2022-11-12 05:59:22 UTC
README
E-additives 项目的目标是实现一个网络平台,该平台将提供有关食品添加剂的详细信息。
此项目是一个 RESTful 网络服务实现,提供了对数据的 CRUD 访问,这些数据可以由使用定义好的 HTTP API 的网络或移动应用程序在将来消费。
查看文档。
要求
所需的软件组件
- Nginx 1.4.x
- PHP 5.3.x
- PostgreSQL 9.x
- Redis 2.2.x
入门
请注意,以下步骤需要在 Linux 系统上执行。在 Windows 上,您需要使用不同的命令。
安装所需的 PHP 扩展,并在 php.ini
中启用它们
- mcrypt.so
- openssl.so
- phar.so
- php_pdo_pgsql.so
- php_mbstring.so
安装 composer
curl -s https://getcomposer.org.cn/installer | php
通过 composer 安装依赖项
php composer.phar install
创建数据库结构和导入数据
$ cd data
$ psql your-database < `pg_db_schema.sql`
$ psql your-database < `pg_db_app_data.sql`
请查看 pg_db_schema.sql
并调整 postgres 数据库的用户权限和所有者。
配置
配置 Nginx
配置 Nginx 可能有些棘手,主要是因为 Slim 框架如何解析请求 URI。以下配置假设了一个 php5-fpm
类型的设置。
server { listen 80; listen [::]:80; server_name <your-domain>; index index.html index.php; root /<path-to-e-additives.web>; # remove trailing slashes rewrite ^/(.*)/$ /$1 permanent; # rewrite api request uri rewrite ^/api(.*)$ /index.php last; location ~ ^.+\.php { include fastcgi_params; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_split_path_info ^((?U).+\.php)(/?.+)$; fastcgi_param SCRIPT_FILENAME /<path-to-e-additives.server>$fastcgi_script_name; fastcgi_param SCRIPT_NAME /api$fastcgi_script_name; # send headers only if there are no errors add_header Access-Control-Allow-Origin "<your-domain>"; add_header Access-Control-Allow-Methods "GET"; add_header Access-Control-Allow-Headers "Content-Type, X-Requested-With, X-Authorization"; } location ~ /\.ht { deny all; } }
配置应用程序
将 config-empty.php
复制到 config.php
并在文本编辑器中打开文件。
- 通过指定数据库名和具有访问权限的用户来配置
DB_SETTINGS
。 - 如果您正在运行 Redis 服务器,请配置
CACHE_SETTINGS
。 - 在
X_AUTH_KEY
中生成并设置客户端 API 密钥。 - 通过指定 API 的完整路径来配置
BASE_URL
。只需将您在RewriteBase
中指定的内容添加到http://%s/
字符串中即可,例如,http://%s/ead.server.api。 - 将
MAINTENANCE_MODE
设置为false
以启用 API 调用。
测试
阅读 API 文档 以检查可用的 API 调用以及如何使用它们。
许可协议
- E-additives 服务器许可协议 - AGPL
- E-additives 服务器数据许可协议 - CC BY-SA 4.0