Bitte um Test

Alles, was nicht in die anderen Foren passt, kannst du hier loswerden.
Antworten
XimeX
Developer
Beiträge: 1148
Registriert: 12. Jul 2015, 13:21
Wohnort: Austria

Bitte um Test

Beitrag von XimeX »

Hallo,

Ich versuche gerade die constants.php zu verbessern brauche dafür aber Testergebnisse von verschiedenen Testumgebungen.
Wichtig wären Tests mit SSL-Proxies, Normale Proxies, VMs, (Docker-)Container, ...

Bei "$g_root_path" die übliche URL eintragen.
Einfach den code in eine test.php auf den Server packen. In das root Verzeichnis von Admidio. Also das es mit "https://www.example.com/admidio/test.php" aufgerufen werden kann.
Anschließen bitte die eingegebene $g_root_path url und den angezeigten string (JSON) mir per PM schicken oder in anonymisierter form hier im posten.

Meine Befürchtung ist dass es mit FILE_URL und CURRENT_URL noch Probleme gibt.

Danke!

Code: Alles auswählen

<?php

$g_root_path = 'https://www.example.com/admidio';

// https://www.example.org:1234/subfolder/adm_program/index.php?param=value#fragment
// https://www.myproxy.com:1234/www.example.com/subfolder/adm_program/index.php?param=value#fragment
$urlComponents = parse_url($g_root_path);

define('SCHEME',  $urlComponents['scheme']); // http | https
define('PORT',    $urlComponents['port']); // 1234
define('URL_DIR', $urlComponents['path']); // /subfolder | /www.example.com/subfolder
define('DOMAIN',  $urlComponents['host']); // www.example.org | www.myproxy.com
define('HOST',    DOMAIN . ((PORT === null) ? '' : ':' . PORT)); // www.example.org:1234 | www.myproxy.com:1234
define('ORIGIN',  SCHEME . '://' . HOST); // https://www.example.org:1234 | https://www.myproxy.com:1234
define('HTTPS',   SCHEME === 'https'); // true | false

// URLS
define('ADMIDIO_URL', ORIGIN . URL_DIR); // https://www.example.org:1234/subfolder | https://www.myproxy.com:1234/www.example.com/subfolder
define('FILE_URL',    ORIGIN . parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH)); // https://www.example.org:1234/subfolder/adm_program/index.php
define('CURRENT_URL', ADMIDIO_URL . $_SERVER['REQUEST_URI']); // https://www.example.org:1234/subfolder/adm_program/index.php?param=value#fragment

echo json_encode(array(
    'SCHEME' => SCHEME,
    'PORT' => PORT,
    'URL_DIR' => URL_DIR,
    'DOMAIN' => DOMAIN,
    'HOST' => HOST,
    'ORIGIN' => ORIGIN,
    'HTTPS' => HTTPS,
    'ADMIDIO_URL' => ADMIDIO_URL,
    'FILE_URL' => FILE_URL,
    'CURRENT_URL' => CURRENT_URL
));
JanR
Beiträge: 7
Registriert: 12. Jan 2018, 11:59

Re: Bitte um Test

Beitrag von JanR »

Hi,
du musst in deinem Skript noch folgendes als erste Zeile anfügen:

Code: Alles auswählen

<?php
Das hier ist meine (anonymisierte) Ausgabe:

Code: Alles auswählen

{"SCHEME":"https",
"PORT":null,
"URL_DIR":"\/portal",
"DOMAIN":"mein.verein.xyz",
"HOST":"mein.verein.xyz",
"ORIGIN":"https:\/\/mein.verein.xyz",
"HTTPS":true,
"ADMIDIO_URL":"https:\/\/mein.verein.xyz\/portal",
"FILE_URL":"https:\/\/mein.verein.xyz\/test.php",
"CURRENT_URL":"https:\/\/mein.verein.xyz\/portal\/test.php"
}
Hoffe, das hilft weiter.

Grüße
XimeX
Developer
Beiträge: 1148
Registriert: 12. Jul 2015, 13:21
Wohnort: Austria

Re: Bitte um Test

Beitrag von XimeX »

Hallo JanR:

Bist du dir sicher das bei FILE_URL kein /portal in der url drinnen war? Vll beim anonymisieren rausgefallen?
Das zwischen FILE_URL und CURRENT_URL ein unterschied ist bezüglich /portal hätt ich nämlich nicht erwartet
JanR
Beiträge: 7
Registriert: 12. Jan 2018, 11:59

Re: Bitte um Test

Beitrag von JanR »

Hallo, es ist genauso wie ich es gepostet habe. Habe es nochmal getestet. Allerdings musst du bedenken, dass ich deine Empfehlung von Github in meiner constants.php mit drin habe:

Code: Alles auswählen

// URLS
define('ADMIDIO_URL', $g_root_path);/www.example.com/subfolder
//define('FILE_URL',    SCHEME . '://' . HOST . $_SERVER['SCRIPT_NAME']); 
//define('CURRENT_URL', SCHEME . '://' . HOST . $_SERVER['REQUEST_URI']);
define('FILE_URL',    SCHEME . '://' . HOST . ADMIDIO_URL_PATH . $_SERVER['SCRIPT_NAME']);
define('CURRENT_URL', SCHEME . '://' . HOST . ADMIDIO_URL_PATH . $_SERVER['REQUEST_URI']);
XimeX
Developer
Beiträge: 1148
Registriert: 12. Jul 2015, 13:21
Wohnort: Austria

Re: Bitte um Test

Beitrag von XimeX »

Aber die constants.php hat ja bei meinem code keine auswirkung. Hast du jetzt direkt den Code von oben getestet oder den Code mit der constants.php vermischt?
JanR
Beiträge: 7
Registriert: 12. Jan 2018, 11:59

Re: Bitte um Test

Beitrag von JanR »

Du hast recht, das hat nichts mit der constants.php zu tun. Habe nur nach einem Grund für das unerwartete verhalten gesucht.... Das war dann ein Fehlschuss ;) Habe nix vermischt, das Ergebnis ist wie oben angegeben.
Antworten