buse974/skeleton-dms

Skeleton Dms

v1.0 2016-09-14 07:52 UTC

This package is auto-updated.

Last update: 2024-09-16 01:33:14 UTC


README

简介

这是一个使用Zend Framework MVC层和模块系统构建的骨架应用程序 With Dms。

使用Composer安装

创建新的Zend Framework项目的最简单方法是使用 Composer。如果您还没有安装它,请按照 文档 进行安装。

创建您的新的Zend Framework项目

$ composer create-project buse974/skeleton-dms  path/to/install

安装完成后,您可以使用PHP内置的web服务器立即进行测试

$ cd path/to/install
$ php -S 0.0.0.0:8080 -t public/ public/index.php
# OR use the composer alias:
$ composer serve

这将在8080端口启动cli-server,并将其绑定到所有网络接口。然后您可以访问 https://:8080/

  • 这将显示Zend Framework欢迎页面。

注意:内置的CLI服务器仅用于开发。

开发模式

骨架默认附带 zf-development-mode,并提供三个别名来使用它所提供的脚本

$ composer development-enable  # enable development mode
$ composer development-disable # disable development mode
$ composer development-status  # whether or not development mode is enabled

您可以在 config/development.config.php.dist 中提供开发模式模块和引导级别配置,并在 config/autoload/development.local.php.dist 中提供开发模式应用程序配置。启用开发模式会将这些文件复制到不带 .dist 后缀的版本,而禁用开发模式则会删除这些副本。

开发模式是骨架安装过程的一部分自动启用。在更改上述提到的 .dist 配置文件之一后,您可能需要禁用然后启用开发模式以使更改生效,或者手动对这些文件的 .dist-less副本进行匹配更新。

运行单元测试

要运行提供的骨架单元测试,您需要执行以下操作之一

  • 在创建项目初始项目时,选择安装MVC测试支持。

  • 在创建项目初始后,安装 zend-test

    $ composer require --dev zendframework/zend-test

一旦存在测试支持,您可以使用以下方式运行测试

$ ./vendor/bin/phpunit

如果您需要为PHPUnit测试设置进行本地修改,将 phpunit.xml.dist 复制到 phpunit.xml 并编辑新文件;后者在运行测试时具有优先级,并被版本控制忽略。(如果您想永久修改,请编辑 phpunit.xml.dist 文件。)

使用Vagrant

此骨架包含一个基于ubuntu 16.04的 Vagrantfile,并使用ondrej/php PPA提供PHP 7.0。启动它

$ vagrant up

构建完成后,您也可以在虚拟机内运行composer。例如,以下将安装依赖项

$ vagrant ssh -c 'composer install'

这将更新它们

$ vagrant ssh -c 'composer update'

运行时,Vagrant将您的宿主端口8080映射到虚拟机的80端口;您可以在 https://:8080/ 访问网站

Vagrant和VirtualBox

虚拟机镜像基于ubuntu/xenial64。如果您使用VirtualBox作为提供者,您需要

  • Vagrant 1.8.5或更高版本
  • VirtualBox 5.0.26或更高版本

有关vagrant文档,请参阅 vagrantup.com

使用docker-compose

此框架提供了一个 docker-compose.yml 文件,用于与 docker-compose 结合使用;它以提供的 Dockerfile 作为其基础。使用以下命令构建并启动镜像:

$ docker-compose up -d --build

此时,您可以通过访问 https://:8080 来查看正在运行的网站。

您还可以从镜像中运行 composer。容器环境名称为 "zf",因此您需要在 docker-compose run 中传递该值。

$ docker-compose run zf composer install

Web 服务器配置

Apache 配置

为了配置 Apache,请设置一个虚拟主机,指向项目的 public/ 目录,然后您应该可以开始了!其外观可能如下所示

<VirtualHost *:80>
    ServerName zfapp.localhost
    DocumentRoot /path/to/zfapp/public
    <Directory /path/to/zfapp/public>
        DirectoryIndex index.php
        AllowOverride All
        Order allow,deny
        Allow from all
        <IfModule mod_authz_core.c>
        Require all granted
        </IfModule>
    </Directory>
</VirtualHost>

Nginx 配置

为了配置 Nginx,打开您的 /path/to/nginx/nginx.conf 文件,并在 http 块中添加一个 include 指令,如果尚未存在的话。

http {
    # ...
    include sites-enabled/*.conf;
}

/path/to/nginx/sites-enabled/zfapp.localhost.conf 下为您的项目创建一个虚拟主机配置文件,其外观可能如下所示

server {
    listen       80;
    server_name  zfapp.localhost;
    root         /path/to/zfapp/public;

    location / {
        index index.php;
        try_files $uri $uri/ @php;
    }

    location @php {
        # Pass the PHP requests to FastCGI server (php-fpm) on 127.0.0.1:9000
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_param  SCRIPT_FILENAME /path/to/zfapp/public/index.php;
        include fastcgi_params;
    }
}

重新启动 Nginx,现在您应该可以开始了!

QA 工具

该框架默认不包含任何 QA 工具,但为每个都提供了配置

此外,它还提供了一些对 Application\Controller\IndexController 的基本测试。

如果您想添加这些 QA 工具,请执行以下操作:

$ composer require --dev phpunit/phpunit squizlabs/php_codesniffer zendframework/zend-test

我们在 Composer 配置中为每个工具提供了别名。

# Run CS checks:
$ composer cs-check
# Fix CS errors:
$ composer cs-fix
# Run PHPUnit tests:
$ composer test