Avatar billede hathor Nybegynder
08. januar 2011 - 07:03 Der er 1 kommentar og
1 løsning

PEAR til PHP5 og problemer med includes.

Installation af PEAR til PHP5 på Ubuntu.
Jeg er sådan lidt halvdum, for at sige det mildt, til Linux.

Jeg har netop fået et domæne flyttet fra en server i Holland, til en anden server i Tyskland, og fik det gjort af en professionel.

Serveren kører Ubuntu 10.04 LTS, og udover OS er der installeret Apache 2.2.14, MySQL 5.1.41 samt PHP 5.3.2 fra Ubuntu's repositories.

I sitet, der er temmeligt omfattende og delt over mange sider, er der på stort set hver side inkluderet med
include_once ("includes/db.inc.php");

--

Sitet virker, og alle de gamle includes virker.

Men hvis jeg opretter en ny side med
include_once ("includes/db.inc.php");

får jeg denne fejl: Permission denied in Unknown on line 0 Fatal error: Unknown: Failed opening required '/var/www/domæne.dk/www/test/add_emne.php' (include_path='.:/usr/share/php:/usr/share/pear') in Unknown on line 0

Så langt, så godt.

Jeg har sat en vsftpd ftp-server op, og logger på via root for at undgå problemer med permissions.

Men: Hvis jeg downloader en fungerende fil fra serveren med fungerede includes, og uden at ændre den, lægger den tilbage på serveren i en anden folder, så får jeg igen advarslen: Permission denied in Unknown on line 0 Fatal error: Unknown: Failed opening required '/var/www/domæne.dk/www/test/add_emne.php' (include_path='.:/usr/share/php:/usr/share/pear') in Unknown on line 0


Er det mon et problem med FTP-overførslen og permissions, eller er det mangel på PEAR til PHP5? Den gamle server havde PHP4 og PEAR til PHP4 installeret. Men hvorfor virker filerne indtil jeg flytter dem, uden ellers at ændre dem? Gør FTP overførslen noget ved dem?


Jeg behøver virkelig hjælp til at forstå dette her.

Et sidespørgsmål: Er det en idé - og skader jeg mon noget af serverens opsætning, ved at køre en 'apt-get install php-pear' og derefter 'apt-get install php-db'?


Er der nogen, der har en idé?


Hvis der er noget jeg ikke har fået dækket, må I sige til, så skal jeg ile til med svar.
Avatar billede erikjacobsen Ekspert
08. januar 2011 - 10:20 #1
Det betyder bare at den ikke kan finde includes/db.inc.php - der skal ikke blandes PEAR ind i det.

Hvis du har filen liggende i

  /home/noget/www/includes/db.inc.php

og inkluderer den fra filen

  /home/noget/www/side.php

så virker det, får så kan den se filen. Hvis du derimod inkluderer den fra

  /home/noget/www/underkatalog/side.php

så kan den ikke finde includes/db.inc.php, for den kigger efter den i

  /home/noget/www/underkatalog/includes/db.inc.php

Du kan løse problemet simpelt nok - hvis dette er dit problem - ved at angive den fulde sti

  include_once("/home/noget/www/includes/db.inc.php");

så virker det alle steder fra. Dine stier hedder nok noget andet ...
Avatar billede hathor Nybegynder
08. januar 2011 - 11:28 #2
Det var faktisk ikke det, der var problemet --- Det var forkerte rettigheder opsat i vsftpd.conf - apache havde ikke rettigheder til at vise filen.


Ellers tak for hjælpen :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Uanset kodesprog, så giver vi dig mulighederne for at udvikle det, du behøver.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester