Kiểu MIME .php: application/x-httpd-php

Các file có đuôi .php (script PHP) sử dụng kiểu MIME application/x-httpd-php.

Cập nhật

application/x-httpd-php
Kiểu MIME cho .php
Mã nguồn
Danh mục
Có
Nén bằng gzip/Brotli

Kiểu MIME của file .php là gì?

Kiểu MIME (media type) của file script PHP có phần mở rộng .php là application/x-httpd-php. File PHP phải được máy chủ thực thi, không bao giờ được trả về như file tĩnh. Nếu trình duyệt tải xuống mã PHP của bạn, nghĩa là bộ xử lý PHP chưa được cấu hình — đây là lỗi bảo mật nghiêm trọng, vì mã nguồn (và mọi mật khẩu trong đó) sẽ bị lộ.

Header Content-Type

Content-Type: application/x-httpd-php

Cấu hình máy chủ

Máy chủCấu hình
Nginx (mime.types hoặc 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') hoặc res.setHeader('Content-Type', 'application/x-httpd-php')
Amazon S3Đặt Content-Type: application/x-httpd-php cho đối tượng (metadata), hoặc truyền --content-type application/x-httpd-php vào aws s3 cp

File .php có nên được nén không?

Nên. Script PHP là dữ liệu chưa nén, nên bật gzip hoặc Brotli cho application/x-httpd-php thường giúp giảm 50–80 % dung lượng truyền tải. Hãy đảm bảo danh sách nén của máy chủ có kiểu này — kiểm tra bằng công cụ kiểm tra nén website.

Vì sao kiểu MIME quan trọng

Trình duyệt quyết định cách xử lý phản hồi — hiển thị, thực thi, phát hay tải xuống — dựa trên header Content-Type, không phải phần mở rộng file. Khi bật X-Content-Type-Options: nosniff, kiểu sai sẽ khiến stylesheet và script bị chặn hoàn toàn. Với file tải lên, đừng bao giờ tin vào kiểu do client gửi; hãy kiểm tra nội dung file (magic bytes) trên máy chủ.

Câu hỏi thường gặp

Kiểu MIME của .php là gì?
application/x-httpd-php.
Làm sao để đặt Content-Type cho .php trong Nginx?
Hãy đảm bảo application/x-httpd-php php; có trong khối types (thường nằm ở /etc/nginx/mime.types), sau đó tải lại Nginx.
Có nên nén file .php bằng gzip không?
Nên — định dạng này nén khá tốt, nên hãy thêm kiểu này vào cấu hình gzip/Brotli của bạn.