turk porno porno escort rokettube
Ergebnis 1 bis 2 von 2

Thema: ServerUrl und BasePath auch in der Konsole nutzen

  1. #1
    Erfahrener Benutzer Avatar von JanMalte
    Registriert seit
    12.03.2008
    Ort
    Mannheim & Berlin
    Beiträge
    102
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Standard ServerUrl und BasePath auch in der Konsole nutzen

    Hallo zusammen,

    die automatische Erkennung der Server URL läuft ja recht gut und für eine normale Webanwendung passt das ja auch soweit ganz gut.

    Es kommt aber durchaus vor, dass manche Aufgaben über die Konsole durchgeführt werden. Hier kann dann keine serverUrl oder basePath gefunden werden.

    Beim basePath ist eine Einstellung über die Konfiguration ja bereits möglich:
    PHP-Code:
    'view_manager' => array(
        
    'base_path' => '/test/some/path',
    ), 
    Also könnte man das ja auch auf die ServerUrl ausweiten:
    PHP-Code:
    'view_manager' => array(
        
    'scheme' => 'http',
        
    'port' => null,
        
    'host' => 'maxi.com',
        
    'base_path' => '/test/some/path',
    ), 
    Hierfür dann eine eigene Factory:
    PHP-Code:
    class ServerUrlFactory implements FactoryInterface
    {

        
    /**
         * Create service
         *
         * @param ServiceLocatorInterface $serviceLocator
         *
         * @return ServerUrl
         */
        
    public function createService(ServiceLocatorInterface $serviceLocator)
        {
            
    $serverUrlHelper = new ServerUrl();

            
    $config $serviceLocator->getServiceLocator()->get('Config');
            if (isset(
    $config['view_manager']) && isset($config['view_manager']['scheme'])) {
                
    $serverUrlHelper->setScheme($config['view_manager']['scheme']);
            }
            if (isset(
    $config['view_manager']) && isset($config['view_manager']['port'])) {
                
    $serverUrlHelper->setPort($config['view_manager']['port']);
            }
            if (isset(
    $config['view_manager']) && isset($config['view_manager']['host'])) {
                
    $serverUrlHelper->setHost($config['view_manager']['host']);
            }

            return 
    $serverUrlHelper;
        }

    Das Problem ist jetzt aber, dass der URL Helper sich nicht an die Einstellungen hält, da der ja seine URL selber aus dem Request aufbaut.
    Code:
    serverUrl: http://maxi.com
    basePath: /test/some/path
    urlHelper: /zf2/public/ (URL Aufruf: http://localhost/zf2/public/)
    Die Frage ist, wie habt ihr das gelöst, damit ihr auch über die Konsole die URL benutzen könnt, zum Beispiel E-Mail Versand über einen Cron Job, und auch die Unit Tests laufen?
    Geändert von JanMalte (19.06.2013 um 14:59 Uhr)

  2. #2
    Benutzer
    Registriert seit
    07.03.2013
    Beiträge
    62
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Standard

    Hallo Jan,

    ich weiß das ist schon eine Weile her, aber hast du dafür jemals eine Lösung gefunden? Sitze gerade vor dem selben Problem...

Ähnliche Themen

  1. Lob tut auch gut...
    Von trinigy im Forum Offtopic
    Antworten: 1
    Letzter Beitrag: 02.09.2013, 13:07
  2. Antworten: 2
    Letzter Beitrag: 18.01.2012, 16:13
  3. Antworten: 1
    Letzter Beitrag: 29.12.2011, 01:37
  4. resources.view.basePath wird ignoriert
    Von Innocentus im Forum Einsteigerfragen
    Antworten: 32
    Letzter Beitrag: 08.09.2009, 16:14
  5. Auch Spreadshirt nutzt ZF
    Von Heffer im Forum Offtopic
    Antworten: 2
    Letzter Beitrag: 21.04.2008, 07:52

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •