2017 © Pedro Peláez
 

library webserver

Multithreaded webserver for php written in php

image

techdivision/webserver

Multithreaded webserver for php written in php

  • Tuesday, May 26, 2015
  • by zelgerj
  • Repository
  • 0 Watchers
  • 0 Stars
  • 1,318 Installations
  • 2 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 36 Versions
  • 0 % Grown

The README.md

webserver

Latest Stable Version Total Downloads License Build Status Code Coverage Code Quality, (*1)

Introduction

Are you serious? A web server written in pure PHP for PHP? Ohhhh Yes! :) This is a HTTP/1.1 compliant webserver written in php. And the best... it has a php module and it's multithreaded!, (*2)

We use this in the appserver.io project as a server component for handling HTTP requests., (*3)

Installation

If you want to use the web server with your application add this, (*4)

{
    "require": {
        "appserver-io/webserver": "dev-master"
    }
}

to your composer.json and invoke composer update in your project., (*5)

Usage

If you can satisfy the requirements it is very simple to use the webserver. Just do this:, (*6)

git clone https://github.com/appserver-io/webserver
cd webserver
PHP_BIN=/path/to/your/threadsafe/php-binary bin/webserver

If you're using appserver.io the start line will be:, (*7)

bin/webserver

Goto http://127.0.0.1:9080 and if all went good, you will see the welcome page of the php webserver. It will startup on insecure http port 9080 and secure https port 9443., (*8)

To test a php script just goto http://127.0.0.1:9080/info.php and see what happens... ;), (*9)

Additionally you can pass two arguments to the startup script. The first one is the path to a custom configuration file, the second one to a custom autoloader file. For example, if you want to use your own configuration and autoloader files start the webserver with, (*10)

bin/webserver path/to/your/configuration.xml path/to/your/autoloader.php

Both files can be absolute or relative to the webserver's root directory., (*11)

Please be aware, that the autoloader MUST be able to load the webserver classes too, as it is not complementary but a replacement for the default composer autoloader., (*12)

Semantic versioning

This library follows semantic versioning and its public API defines as follows:, (*13)

  • The public API, configuration and entirety of its modules
  • The public interface of the \AppserverIo\WebServer\ConnectionHandlers\HttpConnectionHandler class
  • The public interfaces within the \AppserverIo\WebServer\Interfaces namespace

External Links

The Versions

16/12 2014
21/11 2014
03/11 2014
03/11 2014
10/10 2014
17/09 2014
25/07 2014
11/07 2014