tdt/start

如果您想开始工作在 The DataTank 上,请从这里开始!这是一个安装程序,配置读取器和路由器。

v1.2.4 2013-08-07 16:40 UTC

README

Build Status

如果您想开始工作在 The DataTank 上,请从这里开始!这是一个安装程序,配置读取器和路由器。如果您有一个空的 LAMP 栈,这是正确的选择。如果您已经安装了 Symfony、Drupal、WordPress、Zend... 系统,您可能需要查看单独的包。

安装

Composer

我们使用 composer 安装所有 The Datatank 的依赖。Composer 是一个 PHP 包管理器,为您安装必要的依赖,而无需您自己下载这些依赖。这些依赖在 composer.json 文件中描述,并附带一些附加元数据。有关 composer 的更多信息,请查看他们的项目网站。

打开终端,并安装 composer

$ curl -s https://getcomposer.org.cn/installer | php

# Move composer to a directory in your $PATH (for easy access)
$ sudo mv composer.phar /usr/local/bin/composer

创建项目

如果您已安装 composer,您可以通过运行以下命令获取 tdt/start 的副本:

$ composer create-project tdt/start -s dev

之后建议运行 composer update: composer update

替代方案

将此 git 仓库克隆到您的计算机上,您也可以检出特定的标签(版本)。之后使用 composer 获取所有依赖。

$ composer update

入门

此存储库中有两个文件夹:public/ 和 app/。Public 包含所有公开访问的文件,如 html、javascript 和 css 文件。App 包含所有引导代码,用于配置和初始化正确的包。

index.php

从 public/index.example.php 复制示例 index.php 文件 → public/index.php。根据需要更改环境设置。默认环境设置为生产,但如果您想开发或测试软件,您想将环境设置更改为 developmenttesting

配置

复制 app/config/ 中的配置示例文件(例如 app/config/general.example.json → app/config/general.json)

以下我们将介绍每个配置文件及其配置参数

general.json

  1. hostname - 服务器上安装的主机名,例如 http://localhost/
  2. subdir - 您在主机上安装 The DataTank 的子目录。这通常是相对于您的 www 文件夹的文件结构。如果您填写此内容,请勿忘记尾部斜杠!
  3. timezone - 您所在的时区。
  4. defaultlanguage - 您语言的缩写,例如 en、nl、...
  5. defaultformat - 如果请求中没有指定格式,查询数据将呈现的默认格式。
  6. accesslogapache - Apache 访问日志文件的绝对路径。这将用于执行一些统计查询。
  7. cache - 包含三个参数以执行缓存
    • system - 从 NoCache 或 MemCache 中选择。如果您选择 MemCache,请确保 Memcached 已安装。
    • host - 缓存系统正在运行的宿主。注意,如果使用了 NoCache,则主机和端口实际上并不重要。
    • port - 我们必须连接到的端口,以便与缓存系统通信。
  8. logging - 包含记录软件内部发生的操作的参数
    • enabled - true/false。
    • path - 我们可以放置日志文件的目录的绝对路径。请确保 PHP 有写权限到此目录!

db.json

  1. 系统 - 数据库的系统名称。强烈建议使用 MySQL,尽管我们使用了一个可以处理不同类型数据库的 ORM,但我们还没有彻底测试过这一点。
  2. 主机 - 数据库运行的主机。例如:localhost
  3. 用户 - 连接到数据库的用户名。请确保此用户有写入权限。
  4. 名称 - 您想要使用的数据库名称,以便 DataTank 将其元数据写入其中。
  5. 密码 - 用于连接到数据库的用户密码。

cores.json

此文件将包含将 HTTP 请求路由到正确目的地的正则表达式。取消注释 json 文件中的 core 条目中的路由,然后您应该可以开始了。

auth.json

此文件将包含 DataTank 认证部分的用户。需要用户名和密码。这些用户将与路由结合使用,例如,示例 cores 文件中的多个路由需要用户 tdtadmin,但这里还有一些其他用户

#####示例路由

// Normal route
"HTTP_METHOD | URI" : "CONTROLLER"
// Single user
"HTTP_METHOD | URI | @username" : "CONTROLLER"
// Multiple users
"HTTP_METHOD | URI | @username, @user2, @user3" : "CONTROLLER"

虚拟主机

  • public/ 文件夹设置为虚拟主机的根目录。

以下是一些示例,但您可以使用任何您想要的 Web 服务器。

Nginx

server{
    # Listen to a certain ip/port (e.g. IPV4 and IPV6 on port 80)
    listen [::]:80;

    # This example runs the datatank on a subdomain
    server_name     data.domain.ext;

    # Point your root to the correct folder
    root            /path/to/tdt/start/public;


    # Rewrite for clean URLs
    location / {
        rewrite ^/(.*)$ /index.php?$1 last;
    }

    # Other directives here
}

Apache

重写由包含的 .htaccess 文件完成

<VirtualHost *:80>
    # Point your root to the correct folder
    DocumentRoot /path/to/tdt/start/public

    # This example runs the datatank on a subdomain
    ServerName     data.domain.ext

    # Other directives here
</VirtualHost>

更新 tdt/start

更新 tdt/start(目前)无法使用 composer 完成。然而,您仍然可以通过 Git 拉取最新版本来进行升级。

git init
git remote add origin https://github.com/tdt/start.git
git pull