Salve a tutti, da qualche tempo ho comprato un libro che si chiama "Sviluppare applicazioni Web 2.0 con PHP". Sto seguendo i vari capitoli ma mi trovo davanti ad un problema con i path relativi ai link generati.
Ho installato Apache+PHP+MySQL e creato un virtualhost come richiesto dal libro:

codice:
NameVirtualHost *:80

# Virtual Host for phpweb20
<VirtualHost *:80>
	ServerName phpweb20
	DocumentRoot "C:/Programmi/Apache Software Foundation/Apache2.2/htdocs/var/www/phpweb20/htdocs"

	<Directory "C:/Programmi/Apache Software Foundation/Apache2.2/htdocs/var/www/phpweb20/htdocs">
		AllowOverride All
		Options All
		Order allow,deny
		Allow from all
	</Directory>
	php_value include_path ".;C:/Programmi/Apache Software Foundation/Apache2.2/htdocs/var/www/phpweb20/include;C:/php/PEAR"
	php_value magic_quotes_gpc off
	php_value register_globals off
	
    SetEnv APP_CONFIG_FILE "settings.ini"
    SetEnv APP_CONFIG_SECTION "development"

</VirtualHost>
La ServerRoot e la DocumentRoot di Apache son quelle di default.
La mia applicazione risiede su http://phpweb20 (un host fittizio creato nel file hosts di windows); i miei link sono creati dinamicamente, quindi vorrei che il metodo getBaseUrl() di Zend_Controller_Front's tornasse la stringa "http://phpweb20/account" invece di solamente "/account". Per farvi capire posto il codice proposto dal libro:

Ecco il metodo gerUrl() per ricavare un url da utilizzare nelle pagine web:
codice:
    public function getUrl($action = null, $controller = null)
    {
        // At this point, $url is nothing
        $url  = rtrim($this->getRequest()->getBaseUrl(), '/') . '/';
               // Now, $url becomes "//index" if I'm e. g. at the front page 
        $url .= $this->_helper->url->simple($action, $controller);
        return $url;
    }
Ecco un plugin smarty relativo che lo utilizza:

codice:
    function smarty_function_geturl($params, $smarty)
    {
        $action     = isset($params['action']) ? $params['action'] : null;
        $controller = isset($params['controller']) ? $params['controller'] : null;
        $route      = isset($params['route']) ? $params['route'] : null;

        $helper = Zend_Controller_Action_HelperBroker::getStaticHelper('url');

        if (strlen($route) > 0) {
            unset($params['route']);
            $url = $helper->url($params, $route);
        }
        else {
            $request = Zend_Controller_Front::getInstance()->getRequest();

            $url  = rtrim($request->getBaseUrl(), '/') . '/';
            $url .= $helper->simple($action, $controller);
        }

        return $url;
    }
Per completezza posto anche il mio file settings.ini e le regole dell'.htaccess:

Settings.ini
codice:
[development]

database.type       = pdo_mysql
database.hostname   = localhost
database.username   = *
database.password   = *
database.database   = phpweb20

paths.base      = C:/Programmi/Apache Software Foundation/Apache2.2/htdocs/var/www/phpweb20
paths.data      = C:/Programmi/Apache Software Foundation/Apache2.2/htdocs/var/www/phpweb20/data
paths.templates = C:/Programmi/Apache Software Foundation/Apache2.2/htdocs/var/www/phpweb20/templates


logging.file = C:/Programmi/Apache Software Foundation/Apache2.2/htdocs/var/www/phpweb20/data/logs/debug.log
.htaccess
codice:
RewriteEngine on
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1
Da cosa può dipendere il fatto che quel metodo torna una stringa vuota? Da qualche impostazione di Apache?
Grazie per l'aiuto.