dynamisches CSS (php) lädt nicht

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/dynamisches-css-php-laedt-nicht_246267/page_1 - zur Vollversion wechseln!


InfiX schrieb am 25.05.2016 um 16:31

ich versuch hier im büro grad ein internes wiki (dokuwiki) aufzusetzen und es klappt einfach nicht, webserver läuft in einer VM auf CentOS 7 mit nginx und php-fpm.

die firefox console bringt diesen fehler:

Zitat
The stylesheet http://10.0.0.**/lib/exe/css.php?t=...i&tseed=*** was not loaded because its MIME type, "application/octet-stream", is not "text/css".
das ist der einzige anhaltspunkt den ich hab, weder php-fpm noch nginx haben einen fehler im log.

hab schon alles probiert was ich irgendwie gefunden hab
siehe z.B.:
https://www.dokuwiki.org/faq:no_styles
http://stackoverflow.com/questions/...-load-css-files

selbst wenn ich den default mime type auf text/css änder funktionierts nicht, der fehler kommt dann zwar nicht mehr, aber style lädt er trotzdem keinen.

da ich grad ziemlich in der nginx.conf herumpfuschen versuch weiss ich nicht obs sinn hat die zu posten.

ein normales .html mit einem normalen .css file geht ohne probleme.
PHP version ist 5.4.16

ich komm grad nicht mehr wirklich weiter :(


Redphex schrieb am 25.05.2016 um 17:25

hau ins php file rein:

header("Content-Type: text/css ");


InfiX schrieb am 25.05.2016 um 17:31

so stehts drin:
header('Content-Type: text/css; charset=utf-8');

warum da ' statt " ist k.a.

aber wenn ichs auf oben genanntes änder, ändert sich leider auch nichts, auch nach löschen des caches nicht.


COLOSSUS schrieb am 25.05.2016 um 17:38

Die `header()`-Funktion musst du aufrufen, bevor dein Script irgendwelchen anderen Output an den Webserver ausgibt. Tust du das?


InfiX schrieb am 25.05.2016 um 17:57

ich tu garnix genau genommen ^^

ich hab das hier installiert: http://download.dokuwiki.org/
und drauf vertraut dass es funktioniert, hab selbst keine erfahrung mit php ansich.


COLOSSUS schrieb am 25.05.2016 um 18:08

Wie schaut denn die ganze HTTP-Response (inkl. Response Header) aus, wenn du die URI per GET-Request fetcht?


InfiX schrieb am 25.05.2016 um 20:47

das hier?

Zitat
Accept-Ranges: bytes
Cache-Control: max-age=2592000
Connection: keep-alive
Content-Length: 6479
Content-Type: application/octet-stream
Date: Wed, 25 May 2016 18:43:41 GMT
Etag: "55d9d146-194f"
Expires: Fri, 24 Jun 2016 18:43:41 GMT
Last-Modified: Sun, 23 Aug 2015 13:57:26 GMT
Server: nginx/1.6.3

im style editor in firefox zeigt er mir css.php an


-=Willi=- schrieb am 25.05.2016 um 21:08

Hab grad ein frisches CentOS 7.0 mit php-fpm, nginx und DokuWiki aufgesetzt und es funktioniert auf Anhieb. Wie sieht denn die relevante server-Klausel in den nginx-Configs aus?


InfiX schrieb am 25.05.2016 um 21:22

wie gesagt, hab da herumprobiert, z.b. das include mime types in location
könntest evtl deine posten? evtl werd ich schlau draus :D
danke

Code:
   server {
       listen       80;
       server_name  wiki.test.net;
       root         /var/www/dokuwiki;

       # Load configuration files for the default server block.
       # include /etc/nginx/default.d/*.conf;

       location / {
         include /etc/nginx/mime.types;
         index doku.php;
         try_files $uri $uri/ @dokuwiki;
       }

       location ^~ /lib/ {
         expires 30d;
       }

       location ^~ /conf/ { return 403; }
       location ^~ /data/ { return 403; }

       location @dokuwiki {
         rewrite ^/_media/(.*) /lib/exe/fetch.php?media=$1 last;
         rewrite ^/_detail/(.*) /lib/exe/detail.php?media=$1 last;
         rewrite ^/_export/([^/]+)/(.*) /doku.php?do=export_$1&id=$2 last;
         rewrite ^/(.*) /doku.php?id=$1 last;
       }

       location ~ \.php$ {
         fastcgi_index index.php;
         fastcgi_pass unix:/var/run/php5-fpm.sock;
         # try_files $uri $uri/ /index.php?$args;
         fastcgi_split_path_info ^(.+\.php)(/.+)$;
         fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
         fastcgi_param SCRIPT_NAME $fastcgi_script_name;
         include fastcgi_params;
       }

       error_page 404 /404.html;
           location = /40x.html {
       }

       error_page 500 502 503 504 /50x.html;
           location = /50x.html {
       }
   }


Spikx schrieb am 25.05.2016 um 21:56

Zitat von InfiX
das hier?
Das ist der Response der css.php? Da steht auf jeden Fall immer noch Content-Type: application/octet-stream


InfiX schrieb am 25.05.2016 um 22:04

nein das war vom normalen index, will ich die css.php aufmachen kommt aber das gleiche.


-=Willi=- schrieb am 25.05.2016 um 22:15

Meine (bare minimum) Config sieht so aus:

Code:
server {
    listen 80 default_server;
    listen [::]:80 default_server;

    root /var/www/dokuwiki;
    index index.php index.html;

    location / {
        try_files $uri $uri/ =404;
    }

    location ~ \.php {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

Habs mit deiner Config auch probiert und deinen Fehler kann ich damit reproduzieren. Ich hab es darauf reduzieren können, dass der Fehler bei
Code:
location ^~ /lib/ {
    expires 30d;
}
liegt. Warum er da den Content-Type der Response auf octect-stream ist mir aber nicht ganz klar. Du kannst die Klausel aber beruhigt auslassen.


InfiX schrieb am 25.05.2016 um 22:19

thx! :D

dacht ich mir dass es irgendsowas einfaches sein muss, dinge nacheinander rauslöschen hab ich noch nicht probiert, auch weil mein verständnis nicht ganz gereicht hat um gleich zu wissen wofür das alles ist, hab die config aus einem beispiel übernommen und dachte das passt so.

:ghug:




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026