Opened 11 years ago
Last modified 8 years ago
#268 reopened Erweiterung
SQL_CACHEDIR hardcodiert über "application_top.php"
| Reported by: | Torsten Riemer | Owned by: | somebody |
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | Shop | Version: | 2.0.1.0 |
| Keywords: | Cc: | ||
| Blocked By: | Blocking: |
Description
Mir ist gerade durch Zufall aufgefallen, dass "SQL_CACHEDIR" hardcodiert in den "application_top.php" Dateien steht.
// SQL caching dir
define('SQL_CACHEDIR', DIR_FS_CATALOG.'cache/');
Würde es hier nicht Sinn machen, dass wir entweder folgenden Code benutzen:
// SQL caching dir
define('SQL_CACHEDIR', DIR_FS_CACHE);
Oder wir einen weiteren Wert in die Tabelle "configuration" einfügen, beispielsweise "DIR_FS_SQLCACHE", so dass man unter "Erweiterte Konfiguration" -> "Cache Optionen" auch für den "DB Cache" einen Ordner definieren kann?
Attachments (0)
Change History (8)
comment:1 by , 11 years ago
| Resolution: | → closed |
|---|---|
| Status: | new → closed |
comment:2 by , 10 years ago
Was du, GTB, sagst widerspricht der Tatsache, daß auch das SESSION_WRITE_DIRECTORY für den Pfad wo bei file-basiertem Session-Handling die Sessions gespeichert werden im Backend einstellbar ist.
Dazu gibt es dann auch noch eine Unlogik oder einen Bug, wenn man so will.
Denn in /admin/configuration.php wird hard-codiert
case 'delcache':
$path = DIR_FS_CATALOG.'cache/';
wo doch hier die Konstante SESSION_WRITE_DIRECTORY stehen müsste für $path.
Gruß,
noRiddle
comment:3 by , 10 years ago
NACHTRAG:
Okay, sehe gerade, daß ja der DB-Cache und nicht der Pfad für die Sessions gemeint ist mit $path.
Dann jedoch ist der Code aus der login_admin.php nicht korrekt
// reset session write directory
case 'sess_write':
xtc_db_query('
UPDATE configuration
SET configuration_value = "'.DIR_FS_CATALOG.'cache"
WHERE configuration_key = "SESSION_WRITE_DIRECTORY"
');
die('Report: SESSION_WRITE_DIRECTORY wurde auf das Cache-Verzeichnis zurückgesetzt.');
break;
denn per Default ist das SESSION_WRITE_DIRECTORY auf /temp gesetzt.
Gruß,
noRiddle
comment:4 by , 10 years ago
| Resolution: | closed |
|---|---|
| Status: | closed → reopened |
Also dann öffne ich das Ticket nochmal...
Ich verstehe es auch nicht, dass wir teilweise benutzen:
"/admin/configuration.php":
DIR_FS_CATALOG.'cache/'
bzw.:
"/inc/xtc_read_cache.inc.php" / "/inc/xtc_write_cache.inc.php":
DIR_FS_CACHE . $filename
Und dann aber wieder:
"/includes/paths.php":
define('SQL_CACHEDIR', DIR_FS_CATALOG . 'cache/');
Sofern die Verbindung zur Datenbank früh genug steht sollte man daraus machen:
define('SQL_CACHEDIR', DIR_FS_CACHE);
comment:5 by , 10 years ago
Was ist denn /includes/paths.php, bist du da schon in der 2.0 ?
Jedenfalls besteht ein heilloses Durcheinander was Cache-Verzeichnisse und das Directory für die file-basierte Session-Speicherung.
Gruß,
noRiddle
comment:6 by , 10 years ago
Ja, bei der Datei "/includes/paths.php" bin ich bei Shopversion 2.00.
Ich gebe dir Recht, dass das überarbeitet gehört!
comment:7 by , 10 years ago
| Milestone: | modified-shop-2.00 → modified-shop-2.10 |
|---|---|
| Version: | 2.0 → 2.10 |
comment:8 by , 8 years ago
| Milestone: | modified-shop-2.1.0.0 |
|---|

das Verzeichnis wird in der paths.php festgelegt. Eine zusätzliche Einstellung im Admin finde ich nicht sinnvoll, denn hier muss man den absoluten Pfad angeben.