- Notifications
You must be signed in to change notification settings - Fork1
Fine-tuning on the PHP built-in web server
License
natanfelles/php-server
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Fine-tuning on the PHP built-in web server
See release notes at:https://github.com/natanfelles/php-server/releases
Open your terminal and run:
composer global require natanfelles/php-server
Add the composer bin path to your.bashrc:
echo'export PATH="$PATH:$HOME/.config/composer/vendor/bin"'>>~/.bashrc
Run:
source~/.bashrc
Download and extract thephp-server project folder.
Add the php-server alias to your.bashrc:
echo'alias php-server="~/php-server/bin/php-server"'>>~/.bashrc
Run:
source~/.bashrc
You can run the php-server in any folder of your operating system.
Each time you run thephp-server command, it will look up if there is a file namedphp-server.ini in the current directory. If found, your settings will override the default settings.
A quick example file content is:
php = PHP_BINARYhost = localhostport = 8080root = ./publicautoindex = trueindex = index.phperror_reporting = E_ALL[ini]display_errors = 1display_startup_errors = 1max_execution_time = 360post_max_size = 200Mupload_max_filesize = 200M[server]ENVIRONMENT = development
You can use the command
php-server new
to create a new configuration file in the current directory.
Key | Default Value | Description |
---|---|---|
php | PHP_BINARY | PHP binary path or command |
host | localhost | Server host |
port | 8080 | Server host port |
root | getcwd() | Document root. The location that will be the public root of your website. |
autoindex | true | Determines if the server will list directory contents if it does not find an index file. |
index | index.html index.php | The names of the index files separated by spaces. |
error_reporting | E_ALL | Sets thelevel of errors that will be reported. |
Section | Description |
---|---|
ini | Used to set customphp.ini directives. |
server | Used to set customServer and execution environment information. |
Knowing this, just create (if necessary) a php-server.ini file, run the server and you're done.
As you can see in theconfig. You can create a php-server.ini file to leave the settings of each project already pre-established.
But, you can also simply runphp-server
and the server will already be available athttp://localhost:8080.
The php-server command can receive some parameters and they are:
Parameter | Description |
---|---|
--php | PHP binary path or command |
--host | Server host |
--port | Server host port |
--root | Document root |
For example, to run the server on a different port:
php-server --port 8081
Or, also with a different version of PHP than the default:
php-server --php php8.4 --port 8081
Right. You get the idea. If you want to run on a different host you can add the host to thehosts file of your operating system.
Hello, how nice that you are reading this.
If you have any idea to improve this project or something is not working as it should, do not hesitate to open anissue and if you have solved the problem feel free to open aPull Request.
About
Fine-tuning on the PHP built-in web server