WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   IIS webserver fungerar endast med MSIE (https://www.wn.se/forum/showthread.php?t=30907)

oddholst 2008-08-03 20:58

Hej.

På föreningen kör vi ett intranet med Windows SBS 2003 som webbserver med PHP.

Fram tills nu har vi enbart kört med IE med Windows XP på företagets intranätsidor men nu skall vi på försök använda en handdator i verksamheten. Den kör Win CE med Pocket Internet Explorer (heter väl det). Problemet är att när man försöker att ladda en sida så visas endast sidans HTML-källkod i webbläsaren utan att tolkas, som om det vore plain/text. Jag testade att installera Firefox 3 på en av datorerna och upptäckte att samma sak hände där. Surfar man in på en extern hemsida så fungerar det dock som vanligt.

Så nu undrar jag vad det är för konfigurationsfel i IIS som gör att det blir så, för jag antar att det är där problemet ligger.

JesperA 2008-08-03 21:04

CGI konfigureringen är korrekt? Alltså att CGI konfigurationen pekar mot din PHP körfil?

crazzy 2008-08-03 21:05

är du säker på att du skickar headern "Content-Type: text/html; charset=???\n" ?

har haft liknande problem med sidor där jag skickar application/xhtml+xml till webbläsare som är lite smått efterblivna.

oddholst 2008-08-03 21:14

Jag är ingen expert i IIS. Berätta hur man kontrollerar alt ställer in headern eller hur man nu skall göra i IIS så att jag inte ställer till med något otyg till i morgon... Jag skall dock genast försöka leta direkt...

Edit: Har det med MIME-typer att göra om man kollar på dessa i Egenskaper på IIS? Jag hittar inte .php där.

crazzy 2008-08-03 23:39

det har med mimetyper att göra ja, finns inte php borde du ange det som text/html.

oddholst 2008-08-04 23:33

Nope. Man skall tydligen inte ange mime-typ för PHP i IIS-konfigurationen. Då riskerar man tydligen att man kan ladda ner källkoden, om jag tolkat infon rätt.

Tillbaka till ruta ett igen. Problemet kvarstår.

När man högerklickar på sidan i Firefox så anger det text/plain som typ av innehåll, medans en testsida (test.html) visar text/html.

I php.ini finns det en rad som läser:
default_mimetype = "text/html"

Trots att jag försöker att ange header text/html som blir det bara text iallafall...

Was ist das los...

crazzy 2008-08-05 09:47

men testa att ange den i php:

<?php
header("Content-Type: text/html; charset=???\n");
?>

lägg in det nånstans innan din html-kod börjar.

oddholst 2008-08-08 10:34

Citat:

Originally posted by crazzy@Aug 5 2008, 09:47
men testa att ange den i php:
?php
header(Content-Type: text/html; charset=???n);
?
lägg in det nånstans innan din html-kod börjar.

Jo, då fungerar det som det skall.

Först lyckades jag inte med det men det berodde på att jag hade glömt kvar en header på ett annat ställe på just index.sidan, lite skräp efter ett annat försök.

Men själva grundproblemet kvarstår. Gör jag en sida, test.php, med följande kod:
Kod:

<html><head>PHP-test</head><body>
<?php
echo date("Y-m-d H:i:s");
?>
</body></html>

Så visas:
Kod:

<html><head>PHP-test</head><body>
2008-08-08 08:08:08
</body></html>

Som ni ser så fungerar själva php-kodningen, men headern blir fel.
Anger jag en header så funkar det som det skall.

Så, vad är det jag glömt i IIS-konfigureringen?

SimonP 2008-08-08 19:36

Funkade inte detta?:
http://www.microsoft.com/technet/prodtechn...c656f99ead.mspx


och du vill inte göra nedanstående alltså?:

Kod:

<?php
 header("Content-Type: text/html; charset=ISO-8859-1");
?>
<html><head>PHP-test</head><body>
<?php
echo date("Y-m-d H:i:s");
?>
</body></html>


oddholst 2008-08-08 22:40

Om jag fattat det hela rätt så skall man inte ställa in någon mime-typ för php eftersom det bara är för statiska filer som det skall finnas mime-typer.

Visst kan jag i varje dokument ställa in headern till text/html men det verkar ju inte vettigt att man skall behöva göra det.

Jag antar att om jag skulle låta göra en ren installation av servern igen så skulle det fungera men vad är det som kan ha gjort att det har blivit så här från början?

Eller har jag fattat allt fel? Man ställer ju inte in någon header om man skriver ASP-sidor för att det skall fungera på firefox etc, eller?

hundserver 2008-08-14 08:13

har du lagt in .php i mappings? och pekat den rätt??
sen måste du även ha php tillåtet i web service extentions.

jayzee 2008-08-16 10:31

Se till att följa webstandarder och ange
Kod:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
i head i ditt html dokument, då borde det fungera och du slipper skicka headers med PHP.
Annars verkar det som din webbserver kör med text/plain ifall det inte finns något som anger vad för dokument typ det är.

oddholst 2008-08-30 10:47

Hej igen.

Jag kan inte hitta roten till problemet, så jag skapade en ny webbplats på servern och flyttade över allt dit och då fungerade det som det skulle. Det var väl någon obskyr inställning någonstans som bara påverkade just den webbplatsen.

hundserver 2008-08-30 12:18

Citat:

Originally posted by oddholst@Aug 30 2008, 10:47
Hej igen.
Jag kan inte hitta roten till problemet, så jag skapade en ny webbplats på servern och flyttade över allt dit och då fungerade det som det skulle. Det var väl någon obskyr inställning någonstans som bara påverkade just den webbplatsen.

Allt du gör på default websidan läggs även in i resterande webplatser,

studiox 2008-08-30 17:04

Citat:

Ursprungligen postat av hundserver
Citat:

Ursprungligen postat av oddholst
Hej igen.
Jag kan inte hitta roten till problemet, så jag skapade en ny webbplats på servern och flyttade över allt dit och då fungerade det som det skulle. Det var väl någon obskyr inställning någonstans som bara påverkade just den webbplatsen.

Allt du gör på default websidan läggs även in i resterande webplatser,

Visst, men nu kanske han gjorde en ny. Att lägga alla sina siter under default är mycket bad practice ..


Alla tider är GMT +2. Klockan är nu 04:40.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson