Ergebnis 1 bis 11 von 11

Thema: Automatischer Login - Cookie wird gelöscht

  1. #1
    Contao-Nutzer
    Registriert seit
    21.10.2014.
    Beiträge
    42

    Standard Automatischer Login - Cookie wird gelöscht

    Hallo zusammen!

    Ich steh mal wieder vor einem Problem und dabei voll auf dem Schlauch.

    Bei einer Contao Installation möchte ich gerne den Automatischen Login verwenden. Seltsamerweise funktioniert das aber immer genau einmal. (Also einmal Browser neu öffnen). Beim 2. versuch ist der User wieder ausgeloggt und das Cookie REMEMBERME gelöscht. Leider hab ich im Moment keinen Plan wo ich nach dem Fehler suchen kann.


    Die Seite existiert schon relativ lange und hat viele Updates erfahren. Den automatischen Login hatten wir bisher nicht verwendet. Es könnte an einem alten Login Modul oder Template liegen, aber ich habe da leider noch keinen Grund gefunden.
    Hat jemand eine Idee?

    Danke und LG,
    Andreas

  2. #2
    Contao-Nutzer
    Registriert seit
    21.10.2014.
    Beiträge
    42

    Standard

    Ablaufdatum des Cookies ist korrekt:

    Screenshot 2024-04-17 162346.png

  3. #3
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    35.517
    Partner-ID
    10107

    Standard

    Poste mal dein fe_page Template.
    » sponsor me via GitHub or PayPal or Revolut

  4. #4
    Contao-Nutzer
    Registriert seit
    21.10.2014.
    Beiträge
    42

    Standard

    Das ist stark angepasst, weil Appkit verwendet wird: https://themeforest.net/item/appkit-mobile/27679559

    PHP-Code:
    <!DOCTYPE html>
    <html lang="<?= $this->language ?>"<?php if ($this->isRTL): ?> dir="rtl"<?php endif; ?>>
    <head>
    <?php
      
    global $objPage;

      if (!
    FE_USER_LOGGED_IN && $objPage->alias == "index") {
       
    header("Location: login.html");
        exit;
      }

    ?>
      <?php $this->block('head'); ?>
        <meta charset="<?= $this->charset ?>">
        <title><?= $this->title ?></title>
        <base href="<?= $this->base ?>">

        <?php $this->block('meta'); ?>
          <meta name="robots" content="<?= $this->robots ?>">
          <meta name="description" content="<?= Contao\StringUtil::substr($this->description320?>">
          <meta name="generator" content="Contao Open Source CMS">
        <?php $this->endblock(); ?>

        <?php if ($this->canonical): ?>
          <link rel="canonical" href="<?= $this->canonical ?>">
        <?php endif; ?>

        <?= $this->viewport ?>
        <?= $this->framework ?>
        <?= $this->stylesheets ?>
        <?= $this->mooScripts ?>
        <?= $this->head ?>
      <?php $this->endblock(); ?>

    </head>
    <body id="top"<?php if ($this->class): ?> class="<?= $this->class ?>"<?php endif; ?><?php if ($this->onload): ?> onload="<?= $this->onload ?>"<?php endif; ?>>
    <div id="preloader"><div class="spinner-border color-highlight" role="status"></div></div>
      <?php $this->block('body'); ?>
        <?php $this->sections('top'); ?>

        <div id="page">

          <?php $this->block('header'); ?>
            <?php if ($this->header): ?>
              <header id="header">
                <div class="inside">
                  <?= $this->header ?>
                </div>
              </header>
            <?php endif; ?>
          <?php $this->endblock(); ?>

          <?php $this->sections('before'); ?>


          <?php $this->block('container'); ?>
            <div id="container"<?php if ($this->right):?> class="row g-0 mb-0"<?php endif;?>>
            <?php if (isset($this->sections['layout-menu-main'])):?>
                <div id="menu-main" class="menu menu-box-left rounded-0 flex-fill" data-menu-width="320" data-menu-active="nav-welcome" style="flex:none" data-menu-backdrop="scroll">
                  <div class="content">              
                    <?php $this->section('layout-menu-main'); ?>
                  </div>            
                </div>
            <?php endif;?>

            <?php if (isset($this->sections['layout-menu-secondary'])):?>
            <div id="menu-secondary" class="menu menu-box-left rounded-0 flex-fill" data-menu-width="360" data-menu-active="nav-secondary">
              <div class="content">
                <?php $this->section('layout-menu-secondary'); ?>
              </div>
            </div>
            <?php endif;?>

              <?php $this->block('main'); ?>
              <?php if (!$this->right):?><div class="page-content flex-grow-1<?php if (isset($this->sections["layout-menu-secondary"])):?> seminarseite<?php endif;?>" id="container"><?php endif;?>
                <main id="main"<?php if ($this->right):?> class="col-12 col-xxl-7 overflow-hidden"<?php endif;?>>
                  <div class="inside<?php if (!$this->right):?> content<?php endif;?>">
                    <?php if ($this->right):?>
                        <div data-card-height="cover" class="inside card rounded-0 gradient-highlight">
                        <?php endif;?>
                            <?= $this->main ?>
                        <?php if ($this->right):?>
                        </div>
                    <?php endif;?>
                    <!-- <a href="#" class="back-to-top-icon back-to-top-icon-circle bg-gray-dark color-white shadow-m"><i class="fa fa-angle-up"></i></a> -->
                  </div>
                  <?php $this->sections('main'); ?>
                </main>
                <?php if (!$this->right):?></div><?php endif;?>
              <?php $this->endblock(); ?>

              <?php $this->block('left'); ?>
                <?php if ($this->left): ?>
                  <aside id="left">
                    <div class="inside">
                      <?= $this->left ?>
                    </div>
                  </aside>
                <?php endif; ?>
              <?php $this->endblock(); ?>

              <?php $this->block('right'); ?>
                <?php if ($this->right): ?>
                  <aside id="right" class="col-5 overflow-hidden d-none d-xxl-block">
                    <div data-card-height="cover" class="inside card rounded-0">
                        <?= $this->right ?>                    
                    </div>
                  </aside>
                <?php endif; ?>
              <?php $this->endblock(); ?>

            </div>
          <?php $this->endblock(); ?>

          <?php $this->sections('after'); ?>

          <?php $this->block('footer'); ?>
            <?php if ($this->footer): ?>
              <footer id="footer">
                <div class="inside">
                  <?= $this->footer ?>
                </div>
              </footer>
            <?php endif; ?>
          <?php $this->endblock(); ?>
          <?php $this->section('layout-menu-footer'); ?>
        </div>

         <!-- Be sure this is on your main visiting page, for example, the index.html page-->
        <!-- Install Prompt for Android -->
        <div id="menu-install-pwa-android" class="menu menu-box-bottom rounded-m">
            <img class="mx-auto mt-4 rounded-m" src="/files/ppe/assets_webumuc/tapp/logo/apple-icon-180x180.png" alt="img" width="90">
            <h4 class="text-center mt-4 mb-2">TAPP auf dem Home Screen</h4>
            <p class="text-center boxed-text-xl">
                Installieren Sie TAPP auf Ihrem Homescreen und verwenden Sie das Portal wie eine native App!
            </p>
            <div class="boxed-text-l">
                <a href="#" class="pwa-install mx-auto btn btn-m font-600 bg-highlight">Hinzufügen</a>
                <a href="#" class="pwa-dismiss close-menu btn-full mt-3 pt-2 text-center text-uppercase font-600 color-red-light font-12 pb-4 mb-3">Vielleicht später</a>
            </div>
        </div>

        <!-- Install instructions for iOS -->
        <div id="menu-install-pwa-ios" class="menu menu-box-bottom rounded-m">
            <div class="boxed-text-xl top-25">
                <img class="mx-auto mt-4 rounded-m" src="/files/ppe/assets_webumuc/tapp/logo/apple-icon-180x180.png" alt="img" width="90">
                <h4 class="text-center mt-4 mb-2">Appkit auf dem Home Screen</h4>
                <p class="text-center ms-3 me-3">
                    Installieren Sie TAPP auf Ihrem Homescreen und verwenden Sie das Portal wie eine native App! Öffnen Sie Ihr Safari Menü und wählen Sie "Zum Home Screen hinzufügen".
                </p>
                <a href="#" class="pwa-dismiss close-menu btn-full mt-3 text-center text-uppercase font-700 color-red-light opacity-90 font-110 pb-5">Vielleicht später</a>
            </div>
        </div>
        <?php $this->sections('bottom'); ?>
        
      <?php $this->endblock(); ?>

      <?= $this->mootools ?>
      <?= $this->jsonLdScripts ?>
    </body>
    </html>

  5. #5
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    35.517
    Partner-ID
    10107

    Standard

    Welche Contao Version genau?
    » sponsor me via GitHub or PayPal or Revolut

  6. #6
    Contao-Nutzer
    Registriert seit
    21.10.2014.
    Beiträge
    42

    Standard

    4.13.39

  7. #7
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    35.517
    Partner-ID
    10107

    Standard

    Verwendet ihr irgendwo sonst vielleicht den {{ua::*}} Insert-Tag?

    Btw. ihr solltet aus Sicherheitsgründen dringend auf Contao 4.13.42 aktualisieren.
    » sponsor me via GitHub or PayPal or Revolut

  8. #8
    Contao-Nutzer
    Registriert seit
    21.10.2014.
    Beiträge
    42

    Standard

    Nein, ist aktuell nirgends in Verwendung.

  9. #9
    Contao-Nutzer
    Registriert seit
    21.10.2014.
    Beiträge
    42

    Standard

    Hab es inzwischen mal mit einer original fe_page versucht. Das Problem bleibt leider bestehen.

  10. #10
    Contao-Nutzer
    Registriert seit
    21.10.2014.
    Beiträge
    42

    Standard

    Scheinbar haben wir dieses Issue mitgeerbt, da wir das Loginmodul damals - mangels besserem Wissen - einfach überschrieben haben. Ist wohl 100% selbstverschuldet.

    https://github.com/contao/contao/issues/400

  11. #11
    Contao-Nutzer
    Registriert seit
    21.10.2014.
    Beiträge
    42

    Standard

    Wen's interessiert was dabei rausgekommen ist:

    Wir hatten zwei Fehler im Code, die beide zur Folge hatten, dass der Auto-Login nicht mehr funktionierte.
    Das eine war, wie von Spooky erkannt - das Inserttag {{ua::class}}, dass noch im Template rumschwirrte.
    Zusätzlich dazu hatte ich einen Block mit dieser Zeile eingebunden. Scheinbar hat das Inserttag zum gleichen Fehler geführt:

    Code:
    <a href="{{env::referer|urlattr}}" class="header-icon header-icon-1"><i class="fa-solid fa-arrow-left fa-xl"></i></a>
    stattdessen hab ich jetzt "javascript:history.back()" hingeschrieben, womit der Autologin wieder geht.

    Schräg, oder?

Aktive Benutzer

Aktive Benutzer

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

Berechtigungen

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