/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
include virker utilstrækkeligt - hvilken
Fra : [5000] Jesper Brunho~


Dato : 02-07-02 13:22

Hej - jeg har problemer med at få phpSecurePages til at virke på mit ene
webhotel, og fik mistanke til deres konfiguration, så jeg har lavet et
lille test-setup:

en mappe ("phpSecurePages") som ligger i roden, med en tekstfil i: test1.txt

en fil m. flg indhold, som så vidt jeg ved (og kan se) skulle kunne
flyttes vilkårligt rundt på sitet (i undermapper etc) og stadig virke...

Det virker også glimrende på min ene server (som imidlertid har lukket
for phpinfo() af sikkerhedsårsager), men overhovedet ikke på den anden
(jeg får: Warning: Failed opening '/phpSecurePages/test1.txt' for
inclusion (include_path='.;c:\php\include') in
D:\web\phonixfolk.dk_c0j7uq\wwwroot\phpsecurepages\test.php on line 14)

php-info kan findes her (sammen med fejlen):
<http://www.phonixfolk.dk/phpsecurepages/test.php>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>title</title>
</head>
<body>

<h1>testside...</h1>
<?php
$path="/phpSecurePages/test1.txt";
$path=$_SERVER['DOCUMENT_ROOT'].$path;
include("$path");
?>
</body>
</html>


Er der nogen der har gode idéer


--
Husk at skrive hvor grejet er - jeg har skrevet postnummer i fra-felt.
Luk for de varme varer - giv og forlang kvittering!
Brug markedsgrupperne rigtigt, se evt.
<http://www.usenet.dk/grupper.pl?list=dk.marked.privat.edb>




 
 
Christian Joergensen (02-07-2002)
Kommentar
Fra : Christian Joergensen


Dato : 02-07-02 13:52

On Tue, 02 Jul 2002 14:21:45 +0200, [5000] Jesper Brunholm wrote:

> $path="/phpSecurePages/test1.txt";
> $path=$_SERVER['DOCUMENT_ROOT'].$path; include("$path"); ?>

> Er der nogen der har gode idéer

Du kører en PHP version der er mindre end 4.1.0 og har derfor ikke adgang
til de überseje arrays, deriblandt $_SERVER ?

--
Christian Jørgensen | It's so complicated, it can't crash.
http://www.razor.dk |

Jesper Brunholm (02-07-2002)
Kommentar
Fra : Jesper Brunholm


Dato : 02-07-02 19:00

Christian Joergensen wrote:
> On Tue, 02 Jul 2002 14:21:45 +0200, [5000] Jesper Brunholm wrote:
>
>
>>$path="/phpSecurePages/test1.txt";
>>$path=$_SERVER['DOCUMENT_ROOT'].$path; include("$path"); ?>
>
>
>>Er der nogen der har gode idéer

> Du kører en PHP version der er mindre end 4.1.0 og har derfor ikke adgang
> til de überseje arrays, deriblandt $_SERVER ?

njah - som man kan se i den phpinfo som jeg postede et link til så er
det 4.2.1, til gengæld så viser samme fil at cliche har taget den
mærkelige beslutning ikke at have variablen DOCUMENT_ROOT med i sit
$_SERVER-array...

Det viste sig således at jeg ved at køre flg kode ind kunne løse problemet:

if(false == ($_SERVER['DOCUMENT_ROOT'] || $DOCUMENT_ROOT)){
$current = split("[/]", "$_SERVER[PHP_SELF]");
//$denne_mappe = $current[1];
$rootpath = "";
for($i=2; $i<count($current); $i++){
$rootpath .= "../";
}
$_SERVER['DOCUMENT_ROOT']=$rootpath;
$DOCUMENT_ROOT=$rootpath;
}

Jeg har selvfølgeligt tænkt mig at prøve at forhøre mig om årsagen hos
cliche.

Tak for hjælpen

mvh

Jesper Brunholm

--
Phønix - dansk folk-musik fra unge musikere - http://www.phonixfolk.dk


Tonni Aagesen (02-07-2002)
Kommentar
Fra : Tonni Aagesen


Dato : 02-07-02 14:25

"[5000] Jesper Brunholm" <nospam@brunholm-scharff.dk> skrev i en meddelelse
news:3D219AD9.8010203@brunholm-scharff.dk...

> (jeg får: Warning: Failed opening '/phpSecurePages/test1.txt' for
> inclusion (include_path='.;c:\php\include') in
> D:\web\phonixfolk.dk_c0j7uq\wwwroot\phpsecurepages\test.php on line 14)

Jeg gætter på, at scriptet ikke ligger i "c:\php\include" så sæt en
".htaccess" fil i roden med indholdet:


php_value include_path ".;D:/web/phonix.dk_c0j7uq"


Så skulle det spille...


--
Mvh
Tonni Aagesen
<agent29 AT stofanet DOT dk>



Jesper Brunholm (02-07-2002)
Kommentar
Fra : Jesper Brunholm


Dato : 02-07-02 19:07

Tonni Aagesen wrote:
> "[5000] Jesper Brunholm" <nospam@brunholm-scharff.dk> skrev i en meddelelse
> news:3D219AD9.8010203@brunholm-scharff.dk...
>
>
>>(jeg får: Warning: Failed opening '/phpSecurePages/test1.txt' for
>>inclusion (include_path='.;c:\php\include') in
>>D:\web\phonixfolk.dk_c0j7uq\wwwroot\phpsecurepages\test.php on line 14)
>
>
> Jeg gætter på, at scriptet ikke ligger i "c:\php\include" så sæt en
> ".htaccess" fil i roden med indholdet:
>
>
> php_value include_path ".;D:/web/phonix.dk_c0j7uq"

[til en start: som jeg har svaret til Christian så har jeg fundet en
løsning, jeg fornemmer dog at kunne lære lidt mere på dette område
(*stærk underdrivelse* ) så jeg følger lige op:]

Det har jeg ikke kunnet få til at virke, den blev ved med at komme med
ovenstående fejlmeddelelse (og den burde vel ændre det "c:\ etc" hvis
det virker?). Jeg har både smidt .htaccess'en i public_html
(webscope-root) og i root udenfor webscope (da jeg er ret newbie hvad
htacces angår og ikke var helt sikker på hvad der var rigtigt...)

Af samme årsag har jeg også set lidt på min manual og prøvet:

php_value include_path ".;D:/web/phonix.dk_c0j7uq";
(dvs med semikolon til sidst)
og
php_value php_include_path ".;D:/web/phonix.dk_c0j7uq"
(med og uden ';')

alt sammen uden at det ændrede på fejlmeddelelsen - kan udbyderen have
lukket for at det virker?

mvh

Jesper Brunholm

--
Phønix - dansk folk-musik fra unge musikere - http://www.phonixfolk.dk


Tonni Aagesen (02-07-2002)
Kommentar
Fra : Tonni Aagesen


Dato : 02-07-02 19:26

"Jesper Brunholm" <nospam@brunholm-scharff.dk> skrev i en meddelelse
news:3D21EBB9.1060502@brunholm-scharff.dk...

> php_value include_path ".;D:/web/phonix.dk_c0j7uq";
> (dvs med semikolon til sidst)
> og
> php_value php_include_path ".;D:/web/phonix.dk_c0j7uq"
> (med og uden ';')
>
> alt sammen uden at det ændrede på fejlmeddelelsen - kan udbyderen have
> lukket for at det virker?

Det kan udbyderen sagtens have gjort, men jeg kom vist til at poste en
linux-agtigt løsning. Til windows brug denne:

php_value include_path "D:/web/....."

Denne virker i hvert fald når jeg tester lokalt.
Det afhænger dog stadig af udbyderens opsætning af httpd.conf.... Sig til
hvis det ikke virker, så er der en"fejl" i deres opsæting.


--
Mvh
Tonni Aagesen
<agent29 AT stofanet DOT dk>



Jakob Møbjerg Nielse~ (02-07-2002)
Kommentar
Fra : Jakob Møbjerg Nielse~


Dato : 02-07-02 20:34

[5000] Jesper Brunholm wrote:
> D:\web...

IIS server?

> $path=$_SERVER['DOCUMENT_ROOT'].$path;


$_SERVER['DOCUMENT_ROOT'] virker kun i Apache

--
Jakob Møbjerg Nielsen | "Five exclamation marks, the
jakob@dataloger.dk | sure sign of an insane mind."
http://www.jakobnielsen.dk/ | -- Terry Pratchett, Reaper Man


Søg
Reklame
Statistik
Spørgsmål : 177503
Tips : 31968
Nyheder : 719565
Indlæg : 6408545
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste