[php] smarty configuratie

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 15:30
Zucht, wat een ellende weer.
Ik denk dat mijn vraag heel simpel kan zijn:

Waarom is it deel van mijn configuratie

var $template_dir = '/home/sites/site203/web/smarty/templates/';
var $compile_dir = '/home/sites/site203/web/smarty/templates_c/';
var $config_dir = '/home/sites/site203/web/smarty/configs/';
var $plugins_dir = array('/home/sites/site203/web/smarty/plugins/');


niet goed en krijg ik nog steeds een foutmelding
Warning: Smarty error: unable to read template resource: "index.tpl" in /home/sites/site203/web/smarty/Smarty.class.php on line 589
Terwijl mij aan de hand van die foutmelding lijkt dat er niets mis is met de configuratie. Ook slashes weghalen aan het eind is zinloos.

Acties:
  • 0 Henk 'm!

  • Harm
  • Registratie: Mei 2002
  • Niet online
Bestaan de genoemde mappen? Heb je alle bestanden van Smarty goed geïnstalleerd? Bestaat het bestand index.tpl?
Ik heb dit ook gehad, en na het nalopen en juist instellen van deze dingen was het allemaal weer goed. :)

Acties:
  • 0 Henk 'm!

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 15:30
Ja. Ja. Ja.

Werkt dus nog niet...

Acties:
  • 0 Henk 'm!

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 02-09 11:02

D2k

hoofdletters?

Doet iets met Cloud (MS/IBM)


Acties:
  • 0 Henk 'm!

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

Probeer het bestand zelf te openen aan de hand van een fopen ofzo, dan weet je of 't aan de smarty configuratie of je apache/php/filesystem configuratie ligt...

Er zou bijvoorbeeld een open basedir restrictie op kunnen treden, of een safe_mode fout, of je hebt uberhaupt geen rechten het bestand je openen, etcetera. En 't zou mij niets verbazen als smarty dat soort foutmeldinkjes lekker onderdrukt.

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Acties:
  • 0 Henk 'm!

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 15:30

Acties:
  • 0 Henk 'm!

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 15:30
drm schreef op 28 december 2002 @ 13:54:
Probeer het bestand zelf te openen aan de hand van een fopen ofzo, dan weet je of 't aan de smarty configuratie of je apache/php/filesystem configuratie ligt...

Er zou bijvoorbeeld een open basedir restrictie op kunnen treden, of een safe_mode fout, of je hebt uberhaupt geen rechten het bestand je openen, etcetera. En 't zou mij niets verbazen als smarty dat soort foutmeldinkjes lekker onderdrukt.
[edit]
IP adres hoeven jullie nu niet meer te weten *D.

Werkt dus gewoon goed... :(.

[ Voor 10% gewijzigd door Dennis op 28-12-2002 20:43 . Reden: IP adres masked >:) ]


Acties:
  • 0 Henk 'm!

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

Dan zou ik in de source van smarty duiken, en kijken wat er nou precies voor die regel 589 gebeurt.

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Acties:
  • 0 Henk 'm!

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 15:30
Ik was je voor:

code:
1
2
3
4
    function trigger_error($error_msg, $error_type = E_USER_WARNING)
    {
        trigger_error("Smarty error: $error_msg", $error_type);
    }


Schiet op zo :'(.

Acties:
  • 0 Henk 'm!

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 15:30
Ohja voor de duidelijkheid: de template is ok, want die werkt gewoon goed @ dev-servertje (die overigens windows is).

Acties:
  • 0 Henk 'm!

  • Kettrick
  • Registratie: Augustus 2000
  • Laatst online: 08:47

Kettrick

Rantmeister!

Bij mij staat in de smarty class gewoon de standaard waarden :
PHP:
1
2
3
4
    var $template_dir    =  'templates';       // name of directory for templates
    var $compile_dir     =  'templates_c';     // name of directory for compiled templates
    var $config_dir      =  'configs';         // directory where config files are located
    var $plugins_dir     =  array('plugins');  // plugin directories


en dit heeft altijd perfect gewerkt, waarom wil je die directory's absoluut aangeven ?

Acties:
  • 0 Henk 'm!

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 15:30
RoeLz schreef op 28 december 2002 @ 14:09:
Bij mij staat in de smarty class gewoon de standaard waarden :
PHP:
1
php


en dit heeft altijd perfect gewerkt, waarom wil je die directory's absoluut aangeven ?
Ik houd dezelfde foutmelding :?.

Acties:
  • 0 Henk 'm!

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

tja, vervelend, maar ik zou toch echt de smarty class gaan debuggen.

Zoek in de class alle $this->trigger_error () calls op, en voeg daar de argumenten met functienaam en regelnummer aan toe, zodat je weet welke van de trigger_error()'s het is. Vervolgens teruglopen en kijken waarom die error getriggerd wordt (if/then/else'jes lezen ;)).

Of geen smarty gebruiken, dat kan natuurlijk ook ;)

edit:

Nog iets: De edit-knop weet jij best wel te vinden.

[ Voor 8% gewijzigd door drm op 28-12-2002 14:36 ]

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Acties:
  • 0 Henk 'm!

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 15:30
Ok, ik heb debugging research gedaan :+.

code:
1
2
3
        if (!$_return) {
            if (!$quiet) {
                $this->trigger_error("unable to read template resource: \"$tpl_path\"");


Heel leuk, maar voordat ik heb gevonden wat ik zoek ben ik wel een paar uur verder denk ik.

drm, het is toch logisch als hij wél werkt bij mij dat hij dan op de productieserver ook werkt? Komop nou zeg...

Acties:
  • 0 Henk 'm!

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

geluk zit in heel kleine dingen ;) En ik heb smarty niet geschreven....

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Acties:
  • 0 Henk 'm!

Verwijderd

Behalve jouw code en de code van smarty heeft ook de configuratie van de server een effect. Zo werkt smarty bijv. pas vanaf PHP 4.0.6, dus zo zou een verschil in PHP versie al een probleem kunnen opleveren.

Mijn advies: lees het stuk over configuratie (http://smarty.php.net/manual/en/installation.php) minitieus door, en dubbelcheck alle settings die relevant kunnen zijn op beide servers. Met deze kennis kan je evt. je debug activiteiten meer gericht voortzetten.

Ik denk dat je beter jezelf kan helpen dan dat andere jou kunnen helpen in dit geval, omdat de combinatie van factoren die een effect zouden kunnen hebben zo groot is, dat het een ongestructureerde gokweedstrijd wordt voor buitenstanders, omdat ze geen toegang hebben tot jouw server, en dus niets zelf kunnen ondezoeken.

Configuratie management is iets waar meestal (te) weinig aandacht aan besteed wordt, waardoor problemen ontstaan. Het oplossen van dergelijke problemen kost vaak erg veel tijd en is erg minitieus (lees: saai) werk, maar daar is weinig tot niets aan te doen.

Succes :)

Acties:
  • 0 Henk 'm!

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 15:30
Verwijderd schreef op 28 december 2002 @ 15:31:
Zo werkt smarty bijv. pas vanaf PHP 4.0.6
:'(.

Dit zegt wel genoeg denk ik zo.

Acties:
  • 0 Henk 'm!

Verwijderd

als jij een php versie van beneden de 4.0.6 draait, zou je zowiezo al moeten upgraden....

Acties:
  • 0 Henk 'm!

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 15:30
Verwijderd schreef op 28 December 2002 @ 16:07:
als jij een php versie van beneden de 4.0.6 draait, zou je zowiezo al moeten upgraden....
Tuurlijk draai ik thuis een recente versie, maar je kan je hosting provider niet zo makkelijk dwingen hè of het ff zelf doen.... ;)

Maar ik heb hem een mailtje gestuurd :).

Acties:
  • 0 Henk 'm!

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

Dat vind ik dan niet zo "tuurlijk" meer. Ik heb thuis altijd zoveel mogelijk dezelfde configuratie als de webserver, zodat ik nooit met dit soort conflicten zit.

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Acties:
  • 0 Henk 'm!

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 15:30
drm schreef op 28 december 2002 @ 16:43:
Dat vind ik dan niet zo "tuurlijk" meer. Ik heb thuis altijd zoveel mogelijk dezelfde configuratie als de webserver, zodat ik nooit met dit soort conflicten zit.
Als je voor meerdere webservers werkt (zoals ik) wordt dat al knap vervelend ;). Ansich heb je wel gelijk natuurlijk, heb jij dat ze bij yoursite altijd worden gehost op de server van yoursite? :).

Acties:
  • 0 Henk 'm!

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

Nee, maar als het niet bij YourSite wordt gehost stel ik meestal wel eisen aan de andere hostingprovider. Als die eisen niet ingewilligd worden hebben wij er vaak weer een hosting klant bij ;)

Maar goed, de meeste sites worden bij ons gehost, ja, dus dat maakt 't wel een stuk eenvoudiger. Overigens is het niet zo moeilijk om op je dev-pc verschillende phpversies te hebben. Je kunt namelijk apache met de verwijzing naar de juiste php module / CGI opstarten ("Process these directives before starting up"). En verschillende apacheversies maakt gelukkig voor het devven niet veel uit, dus daar heb ik er maar 1tje van ;)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Acties:
  • 0 Henk 'm!

Verwijderd

/me zegt nog maar eens: configuratie management
Dus idd niet lukraak een server opzetten, maar je omgeving(en) opzetten aan de hand van bewuste keuzes, waarvan de gevolgen overwogen zijn, en tevens hetzelfde geldt voor wijzigingen aan de omgevingen.

Je kan dus best kiezen voor verschillende versies van omgevingen, maar dan moet je altijd rekening houden met de verschillen.

Acties:
  • 0 Henk 'm!

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 15:30
Verwijderd schreef op 28 december 2002 @ 16:53:
Je kan dus best kiezen voor verschillende versies van omgevingen, maar dan moet je altijd rekening houden met de verschillen.
Dat ben ik helemaal met je eens en heb ik niets aan toe te voegen.

Acties:
  • 0 Henk 'm!

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

Daar moet wel de voetnoot bij dat het nu over de ontwikkelomgeving gaat en niet om de productieomgeving, maar goed, in het algemeen geldt voor beide gevallen hetzelfde...

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz

Pagina: 1