Thread subject: pHpFusion Nederlands (BE|NL) » Ondersteuning, Themas, Infusies, Modificaties en Installatie :: [Opgelost] Update probleem

Posted by showa on 22 August 2009, 07:41
#1

Beste,

Ik heb een update gedaan van v6 naar v7
nu krijg ik deze waarschuwing als ik de site wil benaderen

Warning: open_basedir restriction in effect. File is in wrong directory in /home/httpd/vhosts/chairtherapist.nl/httpdocs/maincore.php on line 63

Fatal error: Failed opening required 'includes/multisite_include.php' (include_path='.:/usr/share/php/PEAR'Wink in /home/httpd/vhosts/chairtherapist.nl/httpdocs/maincore.php on line 63

kan iemand mij helpen hoe dit op te lossen?

Edited by Steff on 26 August 2009, 17:13

Posted by Steff on 22 August 2009, 08:46
#2

Is PHP Safe Mode aan ? (Systeem Beheer > PHP Info > Zoek "safe_mode").
Als dit aan staat is dit waarschijnlijk de oorzaak. Door Safe Mode zijn een aantal php functies uitgeschakeld of gelimiteerd (Waaronder file_exists die gebruikt wordt om de BASEDIR te berekenen.).

Als je zelf je site host op een eigen server, open je php/php.ini zoek je naar safe_mode en zet je "off". Als je je website host op een externe server en geen toegang hebt tot apache/php, vraag je je server beheerder waarom deze aanstaat en of hij deze uit kan zetten.

Soms is het ook mogelijk om op je host control panel dit aan/uit te zetten.

Posted by showa on 22 August 2009, 10:37
#3

ik heb even gezocht bij mijn host en vindt dan deze info

In de meeste gevallen heeft een open_basedir restriction te maken met bestanden die niet gevonden kunnen worden. Dan zouden we het volledige server path moeten opgeven.
Dat wordt dan zoiets als: /home/httpd/vhosts/jouwdomeinnaam.com/httpdocs/willekeurigedirectory (geldt voor server versie: Lion) of /var/www/vhosts/jouwdomeinnaam.com/httpdocs/willekeurigedirectory (geldt voor server versie: Tiger). Je zou het path direct kunnen opgeven bij de include. Maar in de meeste gevallen, zou je dat path willen kunnen hergebruiken.

Dit kunnen we doen op meerdere manieren. Hier volgen er twee:
Je kunt in jouw PHP-pagina het path instellen met: ini_set('include_path', '/some/path/to/includes'Wink; en oproepen met: echo ini_get('include_path'Wink; Je kunt dan /some/locatie zelf aanpassen naar wat voor jou van toepassing is, rekening houdend met de informatie hierboven.

Een andere manier om dit te realiseren is het include_path in een .htaccess bestand verwerken. Een groot voordeel hiervan is dat het dan maar één keer gedeclareerd wordt en daar houdt de server natuurlijk rekening mee als jij het in de pagina's gaat oproepen. In het .htaccess bestand plaats je de volgende regel: php_value include_path '/some/path/to/includes Hiermee heb je het in principe globaal gedeclareerd en je kunt het daarmee ook altijd oproepen vanuit iedere willekeurige PHP-pagina. Dit kunnen we op dezelfde manier doen als hierboven beschreven.


Ik heb een serverversie lion
waar moet ik dan de aanpassing plaatsen?


Posted by Steff on 22 August 2009, 10:44
#4

Dat was de 2de oplossing die ik zou voorstellen Smile.
Je maakt dus een .htaccess (root) bestand aan en zet in dat bestand:
php_value include_path '/home/httpd/vhosts/chairtherapist.nl/httpdocs


Posted by showa on 22 August 2009, 11:00
#5

geplaatst, maar nu krijg ik deze waarschuwing

Fatal error: Failed opening required 'includes/multisite_include.php' (include_path='/home/httpd/vhosts/chairtherapist.nl/httpdocs'Wink in /home/httpd/vhosts/chairtherapist.nl/httpdocs/maincore.php on line 63

Posted by Steff on 22 August 2009, 11:41
#6

Je kan denk ik het best je server beheerder contacteren, dit probleem ligt aan de server en niet aan php-fusion. Zelf ken ik er niet veel van Smile.

Posted by showa on 22 August 2009, 16:34
#7


met een totale nieuwe installatie van v7 zal ik ook het probleem hebben??

Posted by Steff on 23 August 2009, 09:38
#8

Waarschijnlijk wel ja.

Posted by showa on 23 August 2009, 14:10
#9

kan het zijn dat de versie 4 van php die op de server draait het probleem is?

Posted by Steff on 23 August 2009, 14:28
#10

Nu je het zegt, ik heb de changelog nog eens overlezen. En wat blijkt dat je gelijk kan hebben:

Quote

Fixed bug #41518 (file_exists() warns of open_basedir restriction on non-existent file). (Tony)
Bron: PHP


Posted by showa on 23 August 2009, 14:54
#11

en nu!!

Posted by Steff on 23 August 2009, 14:56
#12

Waar host jij je site ?

Posted by showa on 23 August 2009, 14:57
#13

alphamega hosting

Posted by Steff on 23 August 2009, 15:15
#14

In v6 wordt dezelfde functie als in v7 gebruikt dus dat is dus de oorzaak niet. Ben je zeker dat je alle files hebt geupload ?

Posted by showa on 23 August 2009, 15:21
#15

yep heb ik gedaan

Posted by showa on 23 August 2009, 15:23
#16

misschien toch een idee om alles eraf te halen en opnieuw te installeren?

en dan een backup van de database terug te plaatsen?

Posted by Steff on 23 August 2009, 16:03
#17

Probeer eens een proper install van v7, als deze niet lukt dan ligt het toch aan je server. Ik zou eens gaan vragen of ze willen updaten naar php 5. En als ze dat niet doen , een andere host gaan zoeken.

Posted by showa on 23 August 2009, 17:24
#18

alles eraf en opnieuw geinstalleerd

er komt schot in
alleen nog een error

www.chairtherapist.nl

Posted by Steff on 23 August 2009, 18:20
#19

Dan was er toch een bestand vermist denk ik, of onvoledig geupload.
Open locales/Dutch/global.php
Zoek
Code

setlocale(LC_TIME, "nl","NL"); // Linux Server (Windows may differ)


En probeer dit eens te veranderen naar
Code

setlocale(LC_TIME, "nl_NL"); // Linux Server (Windows may differ)


Of voor windows:
Code

setlocale(LC_TIME, "nld_nld"); // Windows Server (Linux may differ)


Als niks werkt kan je dit eventueel weglaten, deze functie zorg ervoor dat je tijden (LC_TIME) in het nederlands worden gezet.

Edited by Steff on 23 August 2009, 18:24

Posted by showa on 23 August 2009, 19:39
#20

ok werkt ( die voor windows)

thanks