Type MIME .php : application/x-httpd-php

Les fichiers se terminant par .php (script PHP) utilisent le type MIME application/x-httpd-php.

Mis à jour le

application/x-httpd-php
Type MIME pour .php
Code
Catégorie
Oui
Compressible avec gzip/Brotli

Quel est le type MIME des fichiers .php ?

Le type MIME (type de média) des fichiers de script PHP portant l’extension .php est application/x-httpd-php. Les fichiers PHP doivent être exécutés par le serveur, et jamais servis tels quels. Si un navigateur télécharge votre code PHP, c’est que le gestionnaire PHP n’est pas configuré : il s’agit d’un problème de sécurité, car le code source (et les mots de passe qu’il contient éventuellement) est alors exposé.

En-tête Content-Type

Content-Type: application/x-httpd-php

Configuration du serveur

ServeurConfiguration
Nginx (mime.types ou types {})application/x-httpd-php php;
Apache (.htaccess)AddType application/x-httpd-php .php
IIS (web.config)<mimeMap fileExtension=".php" mimeType="application/x-httpd-php" />
Node.js / Expressres.type('php') ou res.setHeader('Content-Type', 'application/x-httpd-php')
Amazon S3Définissez Content-Type: application/x-httpd-php sur l’objet (métadonnées), ou transmettez --content-type application/x-httpd-php à aws s3 cp

Faut-il compresser les fichiers .php ?

Oui. Un script PHP est un contenu non compressé : activer gzip ou Brotli pour application/x-httpd-php permet généralement de réduire la taille transférée de 50 à 80 %. Vérifiez que la liste de compression de votre serveur inclut bien ce type, en le testant avec le test de compression de site web.

Pourquoi le type MIME est important

Les navigateurs décident de ce qu’il faut faire d’une réponse (l’afficher, l’exécuter, la lire ou la télécharger) à partir de l’en-tête Content-Type, et non de l’extension du fichier. Avec X-Content-Type-Options: nosniff, un type erroné entraîne le blocage pur et simple des feuilles de style et des scripts. Pour les envois de fichiers, ne faites jamais confiance au type transmis par le client : vérifiez plutôt le contenu du fichier (ses octets magiques) côté serveur.

Questions fréquentes

Quel est le type MIME de .php ?
application/x-httpd-php.
Comment définir le Content-Type de .php dans Nginx ?
Vérifiez que application/x-httpd-php php; figure dans le bloc types (généralement dans /etc/nginx/mime.types), puis rechargez Nginx.
Faut-il compresser les fichiers .php avec gzip ?
Oui : ce format se compresse bien, ajoutez donc ce type à votre configuration gzip/Brotli.