MEIKO Login Template
Introduction
This is a skeleton application with authentication using the
Zend Framework MVC layer and module systems., (*1)
Installation using Composer
The easiest way to create project with this template is to use
Composer. If you don't have it already installed,
then please install as per the documentation., (*2)
To create your new project:, (*3)
$ composer create-project meiko-kod/auth path/to/install
After installation you can set up your project by using, (*4)
$ ant build
Development mode
The skeleton ships with zf-development-mode
by default, and provides three aliases for consuming the script it ships with:, (*5)
$ composer development-enable # enable development mode
$ composer development-disable # disable development mode
$ composer development-status # whether or not development mode is enabled
You may provide development-only modules and bootstrap-level configuration in
config/development.config.php.dist
, and development-only application
configuration in config/autoload/development.local.php.dist
. Enabling
development mode will copy these files to versions removing the .dist
suffix,
while disabling development mode will remove those copies., (*6)
Development mode is automatically enabled as part of the skeleton installation process.
After making changes to one of the above-mentioned .dist
configuration files you will
either need to disable then enable development mode for the changes to take effect,
or manually make matching updates to the .dist
-less copies of those files., (*7)
Running Unit Tests
To run the supplied skeleton unit tests, you need to do one of the following:, (*8)
- During initial project creation, select to install the MVC testing support.
-
After initial project creation, install zend-test:, (*9)
$ composer require --dev zendframework/zend-test
Once testing support is present, you can run the tests using:, (*10)
$ ./vendor/bin/phpunit
If you need to make local modifications for the PHPUnit test setup, copy
phpunit.xml.dist
to phpunit.xml
and edit the new file; the latter has
precedence over the former when running tests, and is ignored by version
control. (If you want to make the modifications permanent, edit the
phpunit.xml.dist
file.), (*11)
Web server setup
Apache setup
To setup apache, setup a virtual host to point to the public/ directory of the
project and you should be ready to go! It should look something like below:, (*12)
<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 setup
To setup nginx, open your /path/to/nginx/nginx.conf
and add an
include directive below
into http
block if it does not already exist:, (*13)
http {
# ...
include sites-enabled/*.conf;
}
Create a virtual host configuration file for your project under /path/to/nginx/sites-enabled/zfapp.localhost.conf
it should look something like below:, (*14)
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;
}
}
Restart the nginx, now you should be ready to go!, (*15)