2012-05-28 14 views
6

używam tego kodu, aby uzyskać typ MIME z danego plikucss typ MIME powrót jako text/plain zamiast text/css

$finfo = new \finfo(FILEINFO_MIME_TYPE); 
$mime = $finfo->buffer(file_get_contents($file)); 

Gdybym paszy plik PHP potem dostać

text/x-php 

ale jeśli karmię go plik CSS uzyskać

text/plain 

I starali się rozwiązać ten problem bezskutecznie, mam AddType w moim Apache, aby umożliwić Pliki CSS.

Ktoś ma jakieś sugestie?

Odpowiedz

5

Trzeba powiedzieć Apache służyć jako pliki text/css gdy ich przedłużenie jest .css. Jedynym rozsądnym sposobem rozróżnienia między serwerem a arkuszem stylów i jakimkolwiek innym typem pliku tekstowego jest nazwa pliku.

Można to zrobić poprzez edycję Apache MIME pliku konfiguracyjnego typu, który jest nazwany mime.types (żyje w innym folderze, w zależności od dystrybucji, może spróbować /etc/apache2), aby następujące stowarzyszenia:

text/css     css 

Alternatywnie, jeśli nie masz dostępu do administratora, można utworzyć .htaccess plik w swoim własnym korzeniu internetowej. Więcej informacji na temat obu metod: here

Mam nadzieję, że to pomoże!

Po przeczytaniu naszego pytania, może źle cię zrozumiałem i wykonałeś już powyższe czynności?

Jeśli tak, czy mógłbyś sprawdzić, jaki system operacyjny odczytuje typ MIME? Istnieją odpowiednie polecenia sprawdzania typu MIME, over here:

Ponadto wydaje się, że byłoby pragmatycznie dodać kolejną kontrolę, aby sprawdzić, czy rozszerzenie pliku kończy się na .css. Czy istnieje powód, dla którego to nie zadziała?

+3

rok później! dzięki! – Eli