Ergebnis 1 bis 22 von 22

Thema: Contao 3.x - Fehler bei ...contao/install.php

  1. #1
    Contao-Nutzer Avatar von vilife
    Registriert seit
    23.06.2009.
    Ort
    Graz
    Beiträge
    26
    Partner-ID
    4968
    User beschenken
    Wunschliste

    Standard Contao 3.x - Fehler bei ...contao/install.php

    Hallo!

    Folgender Fehler tritt leider beim aufruf www.xyz.at/contao/install.php auf:
    Parse error: syntax error, unexpected T_FUNCTION, expecting ')' in /www/htdocs/w00a887d/feuerwehr/contao-3.0.0/system/initialize.php on line 77
    Anbei die initialize.php

    Danke im Voraus!

    lg
    PHP-Code:
    <?php

    /**
     * Contao Open Source CMS
     * 
     * Copyright (C) 2005-2012 Leo Feyer
     * 
     * @package Core
     * @link    http://contao.org
     * @license http://www.gnu.org/licenses/lgpl-3.0.html LGPL
     */


    /**
     * Store the microtime
     */
    define('TL_START'microtime(true));


    /**
     * Define the root path to the Contao installation
     */
    define('TL_ROOT'dirname(__DIR__));


    /**
     * Include functions, constants and interfaces
     */
    require TL_ROOT '/system/helper/functions.php';
    require 
    TL_ROOT '/system/config/constants.php';
    require 
    TL_ROOT '/system/helper/interface.php';


    /**
     * Try to disable the PHPSESSID
     */
    @ini_set('session.use_trans_sid'0);
    @
    ini_set('session.cookie_httponly'true);


    /**
     * Set the error and exception handler
     */
    @set_error_handler('__error');
    @
    set_exception_handler('__exception');


    /**
     * Log PHP errors
     */
    @ini_set('error_log'TL_ROOT '/system/logs/error.log');


    /**
     * Start the session
     */
    @session_start();


    /**
     * Register the class and template loader
     */
    require TL_ROOT '/system/modules/core/library/Contao/ClassLoader.php';
    class_alias('Contao\\ClassLoader''ClassLoader');

    require 
    TL_ROOT '/system/modules/core/library/Contao/TemplateLoader.php';
    class_alias('Contao\\TemplateLoader''TemplateLoader');

    ClassLoader::scanAndRegister(); // config/autoload.php


    /**
     * Register the SwiftMailer and SimplePie autoloaders
     */
    require_once TL_ROOT '/system/vendor/swiftmailer/classes/Swift.php';

    Swift::registerAutoload(function() {
        require 
    TL_ROOT '/system/vendor/swiftmailer/swift_init.php';
    });

    require_once 
    TL_ROOT '/system/vendor/simplepie/autoloader.php';


    /**
     * Get the Config instance
     */
    $objConfig Config::getInstance();


    /**
     * Initialize the Input and RequestToken class
     */
    Input::initialize();
    RequestToken::initialize();


    /**
     * Set error_reporting
     */
    @ini_set('display_errors', ($GLOBALS['TL_CONFIG']['displayErrors'] ? 0));
    error_reporting(($GLOBALS['TL_CONFIG']['displayErrors'] || $GLOBALS['TL_CONFIG']['logErrors']) ? E_ALL|E_STRICT 0);


    /**
     * Set the timezone
     */
    @ini_set('date.timezone'$GLOBALS['TL_CONFIG']['timeZone']);
    @
    date_default_timezone_set($GLOBALS['TL_CONFIG']['timeZone']);


    /**
     * Define the relativ path to the Contao installation
     */
    if ($GLOBALS['TL_CONFIG']['websitePath'] === null)
    {
        
    $path preg_replace('/\/contao\/[^\/]*$/'''Environment::get('requestUri'));
        
    $path preg_replace('/\/$/'''$path);

        try
        {
            
    $GLOBALS['TL_CONFIG']['websitePath'] = $path;

            
    // Only store this value if the temp directory is writable and the local configuration
            // file exists, otherwise it will initialize a Files object and prevent the install tool
            // from loading the Safe Mode Hack (see #3215).
            
    if (is_writable(TL_ROOT '/system/tmp') && file_exists(TL_ROOT '/system/config/localconfig.php'))
            {
                
    $objConfig->update("\$GLOBALS['TL_CONFIG']['websitePath']"$path);
            }
        }
        catch (
    Exception $e)
        {
            
    log_message($e->getMessage());
        }
    }

    define('TL_PATH'$GLOBALS['TL_CONFIG']['websitePath']);


    /**
     * Set the mbstring encoding
     */
    if (USE_MBSTRING && function_exists('mb_regex_encoding'))
    {
        
    mb_regex_encoding($GLOBALS['TL_CONFIG']['characterSet']);
    }


    /**
     * Set the default language
     */
    if (Input::post('language'))
    {
        
    $GLOBALS['TL_LANGUAGE'] = Input::post('language');
    }
    elseif (isset(
    $_SESSION['TL_LANGUAGE']))
    {
        
    $GLOBALS['TL_LANGUAGE'] = $_SESSION['TL_LANGUAGE'];
    }
    else
    {
        foreach (
    Environment::get('httpAcceptLanguage') as $v)
        {
            if (
    is_dir(TL_ROOT '/system/modules/core/languages/' $v))
            {
                
    $GLOBALS['TL_LANGUAGE'] = $v;
                
    $_SESSION['TL_LANGUAGE'] = $v;
                break;
            }
        }

        unset(
    $v);
    }


    /**
     * Include the custom initialization file
     */
    if (file_exists(TL_ROOT '/system/config/initconfig.php'))
    {
        include 
    TL_ROOT '/system/config/initconfig.php';
    }


    /**
     * Check the request token upon POST requests
     */
    if ($_POST && !RequestToken::validate(Input::post('REQUEST_TOKEN')))
    {
        
    // Force JavaScript redirect upon Ajax requests (IE requires absolute link)
        
    if (Environment::get('isAjaxRequest'))
        {
            echo 
    '<script>location.replace("' Environment::get('base') . 'contao/")</script>';
        }
        else
        {
            
    // Send an error 400 header if it is not an Ajax request
            
    header('HTTP/1.1 400 Bad Request');

            if (
    file_exists(TL_ROOT '/templates/be_referer.html5'))
            {
                include 
    TL_ROOT '/templates/be_referer.html5';
            }
            elseif (
    file_exists(TL_ROOT '/system/modules/core/templates/be_referer.html5'))
            {
                include 
    TL_ROOT '/system/modules/core/templates/be_referer.html5';
            }
            else
            {
                echo 
    'Invalid request token. Please <a href="javascript:window.location.href=window.location.href">go back</a> and try again.';
            }
        }

        exit;
    }

  2. #2
    Contao-Urgestein
    Registriert seit
    03.06.2010.
    Ort
    Wuppertal
    Beiträge
    2.149
    User beschenken
    Wunschliste

    Standard

    Zu 90% hast du kein PHP 5.3 auf deinem Webserver.
    Zu 5% ist beim Upload ein Fehler passiert...
    Und die restlichen 5% könnten Fehler anderer Natur sein

  3. #3
    Contao-Nutzer Avatar von vilife
    Registriert seit
    23.06.2009.
    Ort
    Graz
    Beiträge
    26
    Partner-ID
    4968
    User beschenken
    Wunschliste

    Standard ..

    super danke! stimmt hab nur 5.2!

  4. #4
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.559
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Du kannst über die Direktive
    Code:
    AddHandler php53-cgi .php
    in der ".htaccess" auf PHP 5.3 umschalten.
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  5. #5
    Contao-Nutzer Avatar von vilife
    Registriert seit
    23.06.2009.
    Ort
    Graz
    Beiträge
    26
    Partner-ID
    4968
    User beschenken
    Wunschliste

    Standard

    all-inkl hat nun auf 5.3.13 upgedatet! Leider kommt nun folgende fehlermeldung!? :/

    Fatal error: Uncaught exception Exception with message Cannot create file "system/cache/language/en/default.php" thrown in /www/htdocs/w00a887d/feuerwehr/contao-3.0.0/system/modules/core/library/Contao/File.php on line 101

    #0 /www/htdocs/w00a887d/feuerwehr/contao-3.0.0/system/modules/core/library/Contao/System.php(379): Contao\File->__construct('system/cache/la...')
    #1 /www/htdocs/w00a887d/feuerwehr/contao-3.0.0/contao/install.php(52): Contao\System::loadLanguageFile('default')
    #2 /www/htdocs/w00a887d/feuerwehr/contao-3.0.0/contao/install.php(930): InstallTool->__construct()
    #3 {main}

  6. #6
    Contao-Nutzer Avatar von liebling65
    Registriert seit
    23.01.2011.
    Ort
    Regensburg
    Beiträge
    198

    Standard

    kuck doch mal hier - hört sich sehr ähnlich an
    https://www.contao-community.de/show...f-system-cache

  7. #7
    Contao-Nutzer Avatar von vilife
    Registriert seit
    23.06.2009.
    Ort
    Graz
    Beiträge
    26
    Partner-ID
    4968
    User beschenken
    Wunschliste

    Standard

    Danke! aber schon der nächste fehler!
    hui... so quer gestellt hat sichs noch nie :/

    Warning: fopen(/www/htdocs/w00a887d/feuerwehr/contao-3.0.0/system/tmp/f20f2ca18a58069fc7dfd367aa50d33d) [function.fopen]: failed to open stream: Permission denied in /www/htdocs/w00a887d/feuerwehr/contao-3.0.0/system/modules/core/library/Contao/Files/Ftp.php on line 150

    #0 [internal function]: __error(2, 'fopen(/www/htdo...', '/www/htdocs/w00...', 150, Array)
    #1 /www/htdocs/w00a887d/feuerwehr/contao-3.0.0/system/modules/core/library/Contao/Files/Ftp.php(150): fopen('/www/htdocs/w00...', 'wb')
    #2 /www/htdocs/w00a887d/feuerwehr/contao-3.0.0/system/modules/core/library/Contao/File.php(99): Contao\Files\Ftp->fopen('system/config/d...', 'wb')
    #3 /www/htdocs/w00a887d/feuerwehr/contao-3.0.0/contao/install.php(705): Contao\File->__construct('system/config/d...')
    #4 /www/htdocs/w00a887d/feuerwehr/contao-3.0.0/contao/install.php(339): InstallTool->createLocalConfigurationFiles()
    #5 /www/htdocs/w00a887d/feuerwehr/contao-3.0.0/contao/install.php(74): InstallTool->storeFtpCredentials()
    #6 /www/htdocs/w00a887d/feuerwehr/contao-3.0.0/contao/install.php(931): InstallTool->run()
    #7 {main}


    Fatal error: Uncaught exception Exception with message Cannot create file "system/config/dcaconfig.php" thrown in /www/htdocs/w00a887d/feuerwehr/contao-3.0.0/system/modules/core/library/Contao/File.php on line 101

    #0 /www/htdocs/w00a887d/feuerwehr/contao-3.0.0/contao/install.php(705): Contao\File->__construct('system/config/d...')
    #1 /www/htdocs/w00a887d/feuerwehr/contao-3.0.0/contao/install.php(339): InstallTool->createLocalConfigurationFiles()
    #2 /www/htdocs/w00a887d/feuerwehr/contao-3.0.0/contao/install.php(74): InstallTool->storeFtpCredentials()
    #3 /www/htdocs/w00a887d/feuerwehr/contao-3.0.0/contao/install.php(931): InstallTool->run()
    #4 {main}

  8. #8
    Contao-Nutzer Avatar von liebling65
    Registriert seit
    23.01.2011.
    Ort
    Regensburg
    Beiträge
    198

    Standard

    Rechte des Ordners tmp auf 777 setzen sollte helfen

    chmod -R 777 tmp

    Gruss

    Erich

  9. #9
    Contao-Nutzer Avatar von vilife
    Registriert seit
    23.06.2009.
    Ort
    Graz
    Beiträge
    26
    Partner-ID
    4968
    User beschenken
    Wunschliste

    Standard

    es will einfach nicht!
    http://neu.ff-gaishorn.at/check/safe-mode-hack.php

    http://neu.ff-gaishorn.at/contao/install.php

    Ihr Server unterstützt den Dateizugriff per PHP nicht; vermutlich läuft PHP als Apache-Modul unter einem anderen Benutzer. Bitte geben Sie daher Ihre FTP-Zugangsdaten ein, damit Contao Dateien via FTP bearbeiten kann (Safe Mode Hack).
    habe die daten aber schon in die localconfig.php eingetragen!
    ### INSTALL SCRIPT START ###
    $GLOBALS['TL_CONFIG']['useFTP'] = true;
    $GLOBALS['TL_CONFIG']['ftpHost'] = 'test';
    $GLOBALS['TL_CONFIG']['ftpPath'] = '/';
    $GLOBALS['TL_CONFIG']['ftpUser'] = '****';
    $GLOBALS['TL_CONFIG']['ftpPass'] = '***';
    $GLOBALS['TL_CONFIG']['ftpSSL'] = '';
    $GLOBALS['TL_CONFIG']['ftpPort'] = 0;
    ### INSTALL SCRIPT STOP ###

    Ordnerrechte:
    Bildschirmfoto 2012-11-12 um 09.53.36.png

  10. #10
    Contao-Nutzer Avatar von liebling65
    Registriert seit
    23.01.2011.
    Ort
    Regensburg
    Beiträge
    198

    Standard

    bei ftpHost kannste nicht test reinschreiben - muss ne URL sein, z.B.
    $GLOBALS['TL_CONFIG']['ftpHost'] = 'neu.ff-gaishorn.at';
    kommst du mit dem Pfad ins Root des Servers? Is wichtig... beim Einloggen mit dem FTP-Client musst du direkt auf die Contao-Installation kommen

  11. #11
    Contao-Nutzer
    Registriert seit
    15.09.2010.
    Beiträge
    14

    Standard

    Hallo,
    Nur zur Sicherheit:
    Den FTP-Port hast du hier auf 0 stehen, damit wird der Zugriff nicht funktionieren. Du brauchst Port 21

    Gruß Marcus

  12. #12
    Contao-Nutzer Avatar von vilife
    Registriert seit
    23.06.2009.
    Ort
    Graz
    Beiträge
    26
    Partner-ID
    4968
    User beschenken
    Wunschliste

    Standard

    ftpHost und ftpPath sind richtig! hab ich nur hier falsch eingetragen.! Hatte zuvor nie probleme bei der Intallation!

    ### INSTALL SCRIPT START ###
    $GLOBALS['TL_CONFIG']['useFTP'] = true;
    $GLOBALS['TL_CONFIG']['ftpHost'] = 'xyz.at';
    $GLOBALS['TL_CONFIG']['ftpPath'] = '/';
    $GLOBALS['TL_CONFIG']['ftpUser'] = 'f0072489';
    $GLOBALS['TL_CONFIG']['ftpPass'] = '****';
    $GLOBALS['TL_CONFIG']['ftpSSL'] = '';
    $GLOBALS['TL_CONFIG']['ftpPort'] = 21;
    ### INSTALL SCRIPT STOP ###

    daten werden in localconfig geschrieben! Leider komme ich nicht weiter: bei ...contao/install.php werden dann immer die input felder geleert!
    Geändert von vilife (12.11.2012 um 09:42 Uhr)

  13. #13
    Contao-Nutzer Avatar von vilife
    Registriert seit
    23.06.2009.
    Ort
    Graz
    Beiträge
    26
    Partner-ID
    4968
    User beschenken
    Wunschliste

    Standard

    So jetzt hat es endlich funktioniert =)
    Hab jetzt alles noch mal neu über filezilla auf den Server geladen!
    Der Fehler lag glaub ich daran, dass ich den Contao-Order( .tar.gz) über das Web-Ftp von all-inkl hochgeladen habe und dort entpackt wurde!

    danke für eure hilfe!

  14. #14
    Contao-Nutzer Avatar von liebling65
    Registriert seit
    23.01.2011.
    Ort
    Regensburg
    Beiträge
    198

    Standard

    hm... schwierig.
    Mein Tipp: 2.11.6 installieren und dann per Backend auf 3.0.0 updaten

    Hast du ein Logfile auf das du zugreifen kannst? error.log?

  15. #15
    Contao-Nutzer Avatar von liebling65
    Registriert seit
    23.01.2011.
    Ort
    Regensburg
    Beiträge
    198

    Standard

    ah... gut - prima, freut mich dass jetzt alles läuft

  16. #16
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.559
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Das alles könnte man sich sparen, wenn man die von mir unter #4 gepostete Direktive in die ".htaccess" einfügt und PHP im CGI-Modus betreibt. So steht es mittlerweile zig mal hier im Forum und in allen Anleitungen. Wieso sollte man Contao mit einer SMH-Krücke betreiben, wo man doch auf simpelste Art und Weise eine viel bessere Performance im FastCGI-Modus erreicht. Den SMH (aka FTP-Modus) sehe ich nur als allerletzten Workaround, wenn sonst gar nichts mehr geht bzw. wenn man vom Hosting dermaßen eingeschränkt wird, dass es keine andere Alternative gibt. Aber das ist bei ALL-INKL ja nicht der Fall; dort hätte man ja die Möglichkeit, die Prozesse im Benutzerkontext laufen zu lassen, so wie sich das für ein ordentliches Shared Hosting auch gehört.
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  17. #17
    Contao-Nutzer Avatar von liebling65
    Registriert seit
    23.01.2011.
    Ort
    Regensburg
    Beiträge
    198

    Standard

    Nachdem einer meiner Server auch ein Shared Hosting Server ist probier ich das mit PHP im FastCGI-Modus bei der naechsten Installation mal aus.

    Gruss Erich

  18. #18
    Contao-Nutzer
    Registriert seit
    07.01.2012.
    Beiträge
    96

    Standard

    Hallo,

    auf Cantao 2.11.5 habe ich, wie die bisherigen Updates, Contao 3 drüber kopiert.
    Bei install.php kommt folgende Fehlermeldung:

    Warning: in_array() expects parameter 2 to be array, null given in /home/www/web29/html/sub9/system/modules/core/library/Contao/System.php on line 110

    #0 [internal function]: __error(2, 'in_array() expe...', '/home/www/web29...', 110, Array)
    #1 /home/www/web29/html/sub9/system/modules/core/library/Contao/System.php(110): in_array('getInstance', NULL)
    #2 /home/www/web29/html/sub9/system/modules/core/classes/BackendTemplate.php(44): Contao\System->import('ValumsHelper')
    #3 /home/www/web29/html/sub9/system/modules/core/classes/BackendTemplate.php(139): Contao\BackendTemplate->parse()
    #4 /home/www/web29/html/sub9/contao/install.php(742): Contao\BackendTemplate->output()
    #5 /home/www/web29/html/sub9/contao/install.php(130): InstallTool->outputAndExit()
    #6 /home/www/web29/html/sub9/contao/install.php(931): InstallTool->run()
    #7 {main}

    Fatal error: Class 'ValumsHelper' not found in /home/www/web29/html/sub9/system/modules/core/library/Contao/System.php on line 110


    Hat jemand einen Tipp in welcher Richtung ich suchen kann?

    Vielen Dank im Voraus!

    KDF

  19. #19
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.559
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Naja, einfach nur drüberkopieren, ist sicherlich falsch. Wenn das bisher (mehr oder weniger) funktioniert hat, dann liegt das vielleicht nur daran, dass es "nur" Minor oder Bugfix Releases waren. Grundsätzlich gilt, dass ein korrekt ausgeführtes Update selbstverständlich auch veraltete/verwaiste Dateien entfernt. Beim einfachen Drüberkopieren ist das i.d.R. nicht der Fall.

    Bevor man sich an ein so großes Update macht (was ein Major-Update zweifelsfrei ist), sollte man sich zunächst gründlich informieren, welche Neuerungen es gibt bzw. ob es irgendwelche Besonderheiten zu beachten gilt. Zudem muss vor jedem Update geklärt werden, ob die aktuell installierten Drittanbieter-Erweiterungen bereits für das Update freigegeben wurden. Bei Dir scheint es diesbezüglich einige Erweiterungen zu geben, bei denen das (noch) nicht der Fall ist.
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  20. #20
    Contao-Nutzer
    Registriert seit
    07.01.2012.
    Beiträge
    96

    Standard

    Hallo xchs,

    vielen Dankfür Deine Hinweise! Den von Dir angegebenen ersten Artikel habe ich mir schon genau angeschaut bevor ich mich versucht habe.
    Der Check war eigentlich fuer mich zufriedenstellend (php für contao i.O.) Bei Live-update gab es folgende Probleme, weshalb ich auf diesen Weg verzichtet habe:
    - ionCube Loader (An old version of the ionCube Loader prior to version 4.0.9 is installed.)
    - Suhosin extension (The Suhosin extension does not allow to run .phar files.
    You have to add "phar" to the list of allowed streams in your php.ini: suhosin.executor.include.whitelist = phar.)

    Meine .htaccess habe ich entfernt und auch die alten überflüssigen Dateien (https://www.contao-community.de/show...l=1#post228373), was aber nichts gebracht hat. Den Artikel über die Neuerungen hatte ich natuerlich auch gelesen mit dem folgenden Satz "Bei einem Update oder auch Downgrade sollten grundsätzlich nicht einfach nur die neuen Dateien über die alte Installation kopiert werden, sondern auch nicht mehr benötigte Ressourcen gelöscht werden".
    Also habe ich drüber kopiert und die verwaisten Dateien gelöscht. Was ich nicht beachtet habe, ist die Freigabe der Drittanbieter-Erweiterungen. Also werde ich mal noch paar Monate verstreichen lassen und es dann noch einmal probieren.

    Besten Dank und viele Gruesse

    KDF

  21. #21
    Contao-Nutzer
    Registriert seit
    12.07.2013.
    Beiträge
    4

    Standard

    Zitat Zitat von xchs Beitrag anzeigen
    Du kannst über die Direktive
    Code:
    AddHandler php53-cgi .php
    in der ".htaccess" auf PHP 5.3 umschalten.
    Danke für diesen Tipp, den ich hier gefunden habe (mit PHP 5.2.x bei all-inkl.com), der mir als Anfänger überhaupt die Installation ermöglichte.

    (Habe den Eintrag in die .htaccess.default geschrieben, alle sonstigen Einträge dort belassen und dann normal in .htaccess umbenannt. Hoffentlich richtig so, da mir die anderen Einträge leider wenig sagen.)

  22. #22
    Contao-Urgestein
    Registriert seit
    10.07.2010.
    Beiträge
    4.403
    User beschenken
    Wunschliste

    Standard

    (Habe den Eintrag in die .htaccess.default geschrieben, alle sonstigen Einträge dort belassen und dann normal in .htaccessumbenannt. Hoffentlich richtig so, da mir die anderen Einträge leider wenig sagen.)
    Ich würde solche Sachen nur lediglich in die .htaccess schreiben. Die .htaccess.default als das lassen was der Name besagt ... Default = Standard/Original. So hast Du immer die Kontrolle was geändert wurde. Kannst vergleichen zwischen der default und der .htaccess.

    Zudem meckert das contao-check Tool dann auch nicht wenn du dies verwendest. Das Tool erkennt ob die .default verändert wurde.


Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

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