http://docs.phalconphp.com/en/latest/reference/tutorial.html tutorial

<?php echo Phalcon\Tag::form('signup/register') ?>
//output <form method="post" action="/index.php/signup/register">

Using PHP 5.4.23 Built-in webserver and followed the guide http://docs.phalconphp.com/en/latest/reference/built-in.html http://localhost:8000/signup is OK to get the signup/index.phtml

http://localhost:8000/index.php/signup FAIL http://localhost:8000/index.php?%5url=/signup FAIL

after adding

    //Setup a base URI so that all generated URIs include the "tutorial" folder
    $di->set('url', function(){
        $url = new \Phalcon\Mvc\Url();
        $url->setBaseUri('');
        return $url;
    });

is OK, but I wonder why the setBaseUri default is index.php and will the reference on nginx / apache2 route the index.php/uri right?