[PHP] Bestand openen

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • kleautviool
  • Registratie: Mei 2003
  • Laatst online: 17-09 15:43
Ik wil voor mijn cms een pagina openen. Alleen is het probleem dat deze pagina d.m.v. htaccess beveiligd is. Dus krijg ik deze waarschuwing:
Warning: fopen(http://www.jaboom.nl/boom/cms/insertpagina/nieuws/18): failed to open stream: HTTP request failed! HTTP/1.1 401 Authorization Required
in /home/jaboomn/public_html/boom/cms/wysiwyg.php on line 88
Alleen nu is mijn vraag hoe ik wél een met .htaccess beveiligde pagina kan openen. Ik heb al geprobeert om de pagina via DOCUMENT_ROOT op te vragen

PHP:
1
$file = $_SERVER['DOCUMENT_ROOT']."/".$map."/cms/insertpagina/".$_aGET[0]."/".$_aGET[1];


Geeft dus als output

HTML:
1
/home/jaboomn/public_html/boom/cms/insertpagina/nieuws/18


maar ik ook dit werkt niet.
In mijn iframe roep ik de pagina gewoon zo aan http://www.jaboom.nl/boom/cms/insertpagina/nieuws/18 en dat gaat prima.

Ik heb ook al iets over fsockopen() oid gehoord, alleen heb ik geen idee hoe ik dat zou moeten gebruiken.

Misschien dat iemand me een beetje op weg kan helpen?

Acties:
  • 0 Henk 'm!

  • FlowinG
  • Registratie: Maart 2003
  • Laatst online: 19-09 17:00
maar wat doet die htaccess? is het een rewrite functie? En wat doe je uiteindelijk met de variabele $file?

Acties:
  • 0 Henk 'm!

  • Noork
  • Registratie: Juni 2001
  • Niet online
Volgens mij kun je zo wel een beveiligd bestand openen:

http:\\user:pass@server\bla.php

(zo werkt het althans bij ftp servers, volgens mij kan het ook op het http protocol)

Acties:
  • 0 Henk 'm!

  • kleautviool
  • Registratie: Mei 2003
  • Laatst online: 17-09 15:43
Die htaccess beveiligt de boel zodat niet iedereen even alles kan gaan wijzigen :)
Die cariabele $file probeer ik te openen d.m.v. fopen() maar dat geeft een error

Maar ga die manier van Noork ff proberen

Acties:
  • 0 Henk 'm!

  • NightBird
  • Registratie: Januari 2000
  • Laatst online: 19-09 13:48

NightBird

DPC-Crew Coding
Noork schreef op 28 april 2004 @ 17:50:
Volgens mij kun je zo wel een beveiligd bestand openen:

http:\\user:pass@server\bla.php

(zo werkt het althans bij ftp servers, volgens mij kan het ook op het http protocol)
Behalve dat in de internet-wereld alles met '/' werkt ipv met '\' .... :|

WatHoorJeWaar · Asobakken
Eerdere projecten: Leading Courses · Brandstof-zoeker.nl · Voertuig-zoeker.nl


Acties:
  • 0 Henk 'm!

  • SWINX
  • Registratie: Juni 2001
  • Laatst online: 23-07 18:19
zou moeten werken, standaard horen die slashes wel de andere kant op te staan: //

Mannen komen van Mars Tweakers, vrouwen van Venus Bokt


Acties:
  • 0 Henk 'm!

  • Noork
  • Registratie: Juni 2001
  • Niet online
Scherp opgemerkt jongens. Ja natuulijk moet het // zijn. Wat een fout zeg.

Acties:
  • 0 Henk 'm!

  • kleautviool
  • Registratie: Mei 2003
  • Laatst online: 17-09 15:43
Hmm zal al te denken van die slashes :)

Maar als ik http://user:pass@http://www.jaboom.nl/map/naar/pagina doe werkt dit niet hoor :? (Ook zonder die 2e http niet)

Acties:
  • 0 Henk 'm!

  • Noork
  • Registratie: Juni 2001
  • Niet online
Het is zonder de 2e http. En bij user:pass vul je toch wel je gebruikersnaam en wachtwoord in he?

Acties:
  • 0 Henk 'm!

  • sjoerdb2
  • Registratie: Juli 2001
  • Laatst online: 09-05 09:52
dus:
code:
1
http://jouwgebruikersnaam:jouwpasswoord@www.domein.nl/bestand.txt

[ Voor 8% gewijzigd door sjoerdb2 op 28-04-2004 18:04 ]


Acties:
  • 0 Henk 'm!

  • dingstje
  • Registratie: Augustus 2002
  • Laatst online: 02-01-2024
Je wilt zeggen dat als zelfs als je op het filesystem zelf een bestand opent je ook een Error 403 krijgt? Dat lijkt me redelijk onmogelijk... Dat zou gewoon moeten werken. Als je niet via het filesystem aan dat bestand kan komen is het onmogelijk (fopen met een http:// gaat gewoon eerst door een file_get_contents() vergelijkbare functie), daarom dient net die .htaccess... Het is wel mogelijk dat je op het filesystem niet genoeg rechten hebt om het bestand te openen, maar dan kan je nog geen HTTP 403 error krijgen.

If you can't beat them, try harder


Acties:
  • 0 Henk 'm!

  • Skaah
  • Registratie: Juni 2001
  • Laatst online: 16-09 18:38
Bestaat dat bestand eigenlijk wel wat je wilt opvragen? Of is het een mod_rewrite?

Acties:
  • 0 Henk 'm!

  • sjoerdb2
  • Registratie: Juli 2001
  • Laatst online: 09-05 09:52
uit een usernote van de php manual

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
If you're using fopen to open a URL that requires authorization,
 you might need to force a HTTP/1.0 request for it since fopen
 won't support HTTP/1.1 requests. You can do that by setting 
your user_agent to one that is known only to support HTTP/1.0 
(most webservers will be configured to force HTTP/1.0 for some 
browsers). Here's what worked for me:

$returned=URLopen("http://$username:$password@example.com");

function URLopen($url)
{
       // Fake the browser type
       ini_set('user_agent','MSIE 4\.0b2;');

       $dh = fopen("$url",'r');
       $result = fread($dh,8192);          
       return $result;
}

[ Voor 21% gewijzigd door sjoerdb2 op 28-04-2004 18:17 ]


Acties:
  • 0 Henk 'm!

  • kleautviool
  • Registratie: Mei 2003
  • Laatst online: 17-09 15:43
Warning: fopen(http://...@www.jaboom.nl/boom/cms/insertpagina/nieuws/22): failed to open stream: HTTP request failed! HTTP/1.1 401 Authorization Required
in /home/jaboomn/public_html/boom/cms/wysiwyg.php on line 88
En ja het bestand bestaat gewoon, want in het iframe erboven wordt het bestand gewoon weergegeven.

edit:
Als ik dat ding van php.net toepas krijg ik dit:
Warning: fopen(http://...@www.jaboom.nl/...ertpagina/nieuws/nieuws): failed to open stream: HTTP request failed! HTTP/1.1 401 Authorization Required
in /home/jaboomn/public_html/boom/cms/wysiwyg.php on line 91

Warning: fread(): supplied argument is not a valid stream resource in /home/jaboomn/public_html/boom/cms/wysiwyg.php on line 92

[ Voor 41% gewijzigd door kleautviool op 28-04-2004 18:29 ]


Acties:
  • 0 Henk 'm!

  • sjoerdb2
  • Registratie: Juli 2001
  • Laatst online: 09-05 09:52
waarom include je trouwens via http als het bestand op dezelfde server staat?
Pagina: 1