18. november 2006 - 15:04Der er
8 kommentarer og 1 løsning
php virker kun i nogle mapper
Hejsa! Jeg sidder med at problem på min webserver. PHP vil kun virke fra nogle bestemte mapper.. Jeg kan ikke rigtigt se noget system i hvorfor nogle virker og andre ikke gør.. Alle mine gamle sider virker stadig, men når jeg opretter nye sider i bestemte mapper, virker det ikke..
PHP koden bliver enten skrevet ud til klienten og vises direkte eller under view source..
Er der nogen som kan hjælpe med dette besynderlige problem.. Mvh. Kasper
Altså, "din" webserver ligger på din egen computer? Og det er Apache? Og du har tjekket at alle indstillinger gælder for DocumentRoot (sikkert /htdocs/) og nedefter? Og rodmappen også er angivet korrekt i php.ini?
Ja, alstå jeg kører min ejen webserver herhjemme, med apache og php.. Det sidste er jeg lidt usikker på.. Det er ikke så længe siden at jeg reinstallerede det hele så jeg har ikke ændre mere end det højest nødvendige i config filerne.. Hvad skal jeg kigge efter i php.ini..?
; The root of the PHP pages, used only if nonempty. ; if PHP was not compiled with FORCE_REDIRECT, you SHOULD set doc_root ; if you are running php as a CGI under any web server (other than IIS) ; see documentation for security issues. The alternate is to use the ; cgi.force_redirect configuration below doc_root =
; The directory under which PHP opens the script using /~usernamem used only ; if nonempty. user_dir =
; Directory in which the loadable extensions (modules) reside. extension_dir = "./"
; Whether or not to enable the dl() function. The dl() function does NOT work ; properly in multithreaded servers, such as IIS or Zeus, and is automatically ; disabled on them. enable_dl = On
; cgi.force_redirect is necessary to provide security running PHP as a CGI under ; most web servers. Left undefined, PHP turns this on by default. You can ; turn it off here AT YOUR OWN RISK ; **You CAN safely turn this off for IIS, in fact, you MUST.** ; cgi.force_redirect = 1
; if cgi.nph is enabled it will force cgi to always sent Status: 200 with ; every request. ; cgi.nph = 1
; if cgi.force_redirect is turned on, and you are not running under Apache or Netscape ; (iPlanet) web servers, you MAY need to set an environment variable name that PHP ; will look for to know it is OK to continue execution. Setting this variable MAY ; cause security issues, KNOW WHAT YOU ARE DOING FIRST. ; cgi.redirect_status_env = ;
; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI. PHP's ; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok ; what PATH_INFO is. For more information on PATH_INFO, see the cgi specs. Setting ; this to 1 will cause PHP CGI to fix it's paths to conform to the spec. A setting ; of zero causes PHP to behave as before. Default is zero. You should fix your scripts ; to use SCRIPT_FILENAME rather than PATH_TRANSLATED. ; cgi.fix_pathinfo=1
; FastCGI under IIS (on WINNT based OS) supports the ability to impersonate ; security tokens of the calling client. This allows IIS to define the ; security context that the request runs under. mod_fastcgi under Apache ; does not currently support this feature (03/17/2002) ; Set to 1 if running under IIS. Default is zero. ; fastcgi.impersonate = 1;
; cgi.rfc2616_headers configuration option tells PHP what type of headers to ; use when sending HTTP response code. If it's set 0 PHP sends Status: header that ; is supported by Apache. When this option is set to 1 PHP will send ; RFC2616 compliant header. ; Default is zero. ;cgi.rfc2616_headers = 0
Øhm, hva' skal man så finde på... Siger du at dine nye php filer virker, hvis de bare ligger et andet sted? Kan du php'e dem direkte med php.exe fra kommandoprompten f.eks.?
Ja.. Det ser ud til at det er i mapper hvor jeg har haft php filer i, i længere tid.. Men opretter jeg en ny mappe og lægger php i vil det ikke køres rigtigt..
http://aspn.activestate.com/ASPN/docs/PHP/commandline.html Skriv f.eks. php test.php eller php test.php > test.html for at gemme output. Husk at sætte miljøvariabel path til stien for at bruge php.exe hvorsomhelst fra. Hvis dette virker, er din kode (og mapper) ok, og problemet må være relateret til Apache opsætning... vil jeg mene.
Hmm.. Jeg kan ikke få det til at virke, jeg gør følgende: C:\Documents and Settings\Kasper Birk>c:\php\php.exe C:\Program Files\Apache Gro up\Apache\htdocs\test.php Status: 404 Content-type: text/html X-Powered-By: PHP/4.3.7 Set-Cookie: PHPSESSID=6f3e4d6e8f4ae02c8bbfb8fcbd55e602; path=/ Expires: Thu, 19 Nov 1981 08:52:00 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache
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.