Modern PHP, soft skills, productivity and time management.

How to start developing in Symfony with only PHP installed?

This blog post will contain useful information for those, who want to start developing in Symfony without setting up a server (like apache or nginx) or installing docker.

PHP from version 5.4 has built in server. You can run it by executing in console php -S in your projects directory. When you go to this address (of course you can change the port and to localhost) you’ll see the main page of your project.

How to start?

Let’s do a simple test.

1. check your PHP version php -v (it must be greater than 5.4.0)
2. create empty directory for the test mkdir ~/php_test && cd ~/php_test
3. create simple file echo “<?php phpinfo();” > index.php
4. run the server php -S
5. vòila

You should see something like this:

Run Symfony

Ok, your server is running. So we can try to run Symfony using build in server

I’m using in this example Symfony installer for installing the framework. It’s the simplest way to do it. You may find information about it here. If you don’t want to install the installer you may find other ways on that link.

1. create new Symfony installation: cd ~ && symfony new symfony_test
2. install composer dependencies: cd symfony_test && composer install
3. run the serv… oh, wait a minute 😉

Symfony build in server

You can run PHP build in the server in the projects directory: php -S But on that url, you’ll see nothing because Symfony uses `/web/app_dev.php` file as an index. To see the site you must go to

But Symfony has its own build in the server, based on the PHP’s one. Thanks to it you can skip the `/web/app_dev.php` part and go directly to

To run it just execute bin/console server:run. Go to your browser, type and enjoy your fresh Symfony installation.

That’s it. It’s really that simple. Now, go to your project, change something and have fun with Symfony 🙂


Don’t forget to check out other PHP related posts!


  1. Szyszka

    Please notice that this built-in server is not always realized all requirements. I’ve used this one time when I was writing some quick REST app – I was a little bit surprised when I’ve tried to implement endpoint with LINK HTTP method – then was impossible – I don’t know how it looks like nowadays.

    • krzych

      Interesting, I used built-in server for several months, daily, in my work. I don’t remember any problems besides those with ssl (built-in server cannot provide ssl). But I’ve never used LINK method, this is the first time I’ve heard about it 😀

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

© 2024 Krzych Jończyk

Theme by Anders NorenUp ↑