All Projects → nanobox-io → nanobox-engine-php

nanobox-io / nanobox-engine-php

Licence: MIT license
Engine for running PHP apps on Nanobox

Programming Languages

shell
77523 projects
HTML
75241 projects
Roff
2310 projects

Projects that are alternatives of or similar to nanobox-engine-php

nanoinit
A small, proper, init process for docker containers.
Stars: ✭ 43 (+115%)
Mutual labels:  devtools, nanobox
portal
An api-driven, in-kernel layer 2/3 load balancer.
Stars: ✭ 101 (+405%)
Mutual labels:  devtools, nanobox
flip
Simple, lightweight, virtual IP management utility for moving IPs around nodes in response to cluster events.
Stars: ✭ 23 (+15%)
Mutual labels:  devtools, nanobox
red
A fast, in-kernel, ad-hoc point-to-point vxlan network.
Stars: ✭ 31 (+55%)
Mutual labels:  devtools, nanobox
nanobox-rails
Quickly set up a Ruby on Rails app on Nanobox, the ideal platform for developers. With Nanobox, Rails app developers can set up instant, isolated development environments that can be shared among team members. Rails apps created using Nanobox can be automatically deployed to AWS, Azure, Google Cloud, and other cloud hosts without the need for de…
Stars: ✭ 19 (-5%)
Mutual labels:  devtools, nanobox
narc
Small utility to watch log files and ship to syslog service.
Stars: ✭ 18 (-10%)
Mutual labels:  devtools, nanobox
Sloth
Sloth - an extension slowing down page loading to bring real user experience
Stars: ✭ 189 (+845%)
Mutual labels:  devtools
Kubefwd
Bulk port forwarding Kubernetes services for local development.
Stars: ✭ 2,713 (+13465%)
Mutual labels:  devtools
Augury
Angular Debugging and Visualization Tools
Stars: ✭ 2,050 (+10150%)
Mutual labels:  devtools
Mininote
📔 A simple Markdown note-taking editor
Stars: ✭ 171 (+755%)
Mutual labels:  devtools
xray
X-Ray - PHP Engine compiler hook API (new)
Stars: ✭ 19 (-5%)
Mutual labels:  php-extension
Walletconnect Monorepo
WalletConnect Monorepo
Stars: ✭ 230 (+1050%)
Mutual labels:  devtools
Element
💦Load test your app using real web browsers
Stars: ✭ 204 (+920%)
Mutual labels:  devtools
Gifexceptionbundle
😛 The GhostBuster of your exception page!
Stars: ✭ 197 (+885%)
Mutual labels:  devtools
Save Page State
A chrome extension to save the state of a page for further analysis
Stars: ✭ 208 (+940%)
Mutual labels:  devtools
Awesome Linux Dev
A collection of awesome Linux applications and tools for developers.
Stars: ✭ 176 (+780%)
Mutual labels:  devtools
Portal
A clojure tool to navigate through your data.
Stars: ✭ 239 (+1095%)
Mutual labels:  devtools
Devtools
📋 DevTools to help debug forms.
Stars: ✭ 171 (+755%)
Mutual labels:  devtools
React Cordova Boilerplate
TodoMVC example for react with development tools to build a cordova application
Stars: ✭ 206 (+930%)
Mutual labels:  devtools
Codedmailsfree
Ready to use 50+ responsive HTML email templates - Codedmails Free
Stars: ✭ 227 (+1035%)
Mutual labels:  devtools

PHP Build Status

This is a generic PHP engine used to launch PHP web and worker services on Nanobox. It exposes a wide collection configuration options generally handled in the php.ini and other configuration files. Both PHP settings and web server settings are available.

Usage

To use this engine, specify in the boxfile.yml:

run.config:
  engine: php

Composer

This engine uses Composer to manage dependencies. If a composer.json file exists at the root of your application, dependencies will be fetched during a build. The composer install command can be customized during the build process using a setting in the boxfile.yml.

run.config:
  engine: php
  engine.config:
    composer_install: "composer install --no-interaction --prefer-source"

Basic Configuration

This engine exposes configuration options through the boxfile.yml, a yaml config file used to provision and configure your app's platform.

Advanced Configuration Options

This Readme outlines only the most basic and commonly used settings. For the full list of available configuration options, view the Advanced PHP Configuration options.

Overview of Basic boxfile.yml Configuration Options

run.config:
  engine.config:
    # PHP Settings
    runtime: 'php-7.0'
    extensions:
      - curl
      - gd
      - mbstring
      - pdo_mysql
    zend_extensions:
      - ioncube_loader
      - opcache
    max_execution_time: 30
    max_input_time: 30
    error_reporting: E_ALL
    display_errors: 'stderr'
    post_max_size: '8M'
    upload_max_filesize: '2M'
    file_uploads: true

    # Web Server Settings
    webserver: 'apache'

    # Apache Settings
    apache_document_root: '/'
    apache_php_interpreter: fpm
    apache_access_log: false
Quick Links

Web Server Settings
PHP Settings
Apache Settings

Web Server Settings

The following setting is used to select which web server to use in your application.


webserver

The following web servers are available:

run.config:
  engine.config:
    webserver: 'apache'

Web server specific settings are available in the following sections of the Advanced PHP Configuration doc:

Apache Settings
Nginx Settings
Built-In PHP Web Server Settings


PHP Settings

The following settings are typically configured in the php.ini. When using Nanobox, these are configured in the boxfile.yml.


runtime

Specifies which PHP runtime and version to use. The following runtimes are available:

  • php-5.3
  • php-5.4
  • php-5.5
  • php-5.6
  • php-7.0 (default)
  • php-7.1
  • php-7.2
run.config:
  engine.config:
    runtime: 'php-7.0'

extensions

Specifies what PHP extensions should be included in your app's environment. To see what PHP extensions are available, view the full list of available PHP extensions.

run.config:
  engine.config:
    extensions:
      - curl
      - gd
      - mbstring
      - pdo_mysql

zend_extensions

Specifies what Zend extensions should be included in your app's environment. To see what Zend extensions are available, view the Zend Extensions section of the PHP extensions list.

run.config:
  engine.config:
    zend_extensions:
      - ioncube_loader
      - opcache

max_execution_time

Sets the max_execution_time PHP setting.

run.config:
  engine.config:
    max_execution_time: 30

max_input_time

Sets the max_input_time PHP setting.

run.config:
  engine.config:
    max_input_time: 60

error_reporting

Sets the error_reporting PHP setting.

run.config:
  engine.config:
    error_reporting: E_ALL

display_errors

Sets the display_errors PHP setting.

run.config:
  engine.config:
    display_errors: 'stderr'

post_max_size

Sets the post_max_size PHP setting.

run.config:
  engine.config:
    post_max_size: '8M'

upload_max_filesize

Sets the upload_max_filesize PHP setting.

run.config:
  engine.config:
    upload_max_filesize: '2M'

file_uploads

Sets the file_uploads PHP setting.

run.config:
  engine.config:
    file_uploads: true

date_timezone

Sets the date.timezone PHP setting.

run.config:
  engine.config:
    date_timezone: 'US/central'

Apache Settings

The following settings are used to configure Apache. These only apply when using apache as your webserver.


apache_php_interpreter

Specify which PHP interpreter you would like Apache to use.

  • fpm (default)
  • mod_php
run.config:
  engine.config:
    apache_php_interpreter: fpm

apache_access_log

Enables or disables the Apache Access log.

run.config:
  engine.config:
    apache_access_log: false

Help & Support

This is a generic (non-framework-specific) PHP engine provided by Nanobox. If you need help with this engine, you can reach out to us in the #nanobox IRC channel. If you are running into an issue with the engine, feel free to create a new issue on this project.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].