Vì vậy, tôi đang cố gắng xem liệu tôi có thể đặt tiêu đề phản hồi bằng cách định cấu hình chúng trong Apache hay không.
Tôi đang sử dụng thử nghiệm Debian, phòng trường hợp có vấn đề.
Máy chủ web của tôi đang hoạt động và tôi đã sử dụng nó cho nhiều trang web mà tôi đang phát triển. Vì vậy, bây giờ tất cả những gì tôi muốn làm là đặt tiêu đề để xem nó có hoạt động không.
Đây là những gì tôi đã thay đổi trong apache.conf của mình
<Directory /home/web>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
Header set myHeader "Hello Header World"
</Directory>
Đây là những gì tôi lưu trữ tệp cấu hình trong /etc/apache2/sites-available/000-default.conf trông giống như:
<Máy chủ ảo *:80>
# Lệnh ServerName đặt lược đồ yêu cầu, tên máy chủ và cổng
# máy chủ sử dụng để nhận dạng chính nó. Điều này được sử dụng khi tạo
# URL chuyển hướng. Trong bối cảnh máy chủ ảo, ServerName
# chỉ định tên máy chủ nào phải xuất hiện trong tiêu đề Host: của yêu cầu tới
# phù hợp với máy chủ ảo này. Đối với máy chủ ảo mặc định (tệp này)
# giá trị không mang tính quyết định vì nó được sử dụng làm máy chủ lưu trữ cuối cùng bất kể.
# Tuy nhiên, bạn phải đặt nó cho bất kỳ máy chủ ảo nào khác một cách rõ ràng.
#ServerName www.example.com
Quản trị viên web ServerAdmin@localhost
Tài liệuRoot /home/web
Bí danhMatch ^/vmapi/(.*)$ /home/web/vmapi/api_receiver.php
AliasMatch ^/inherentvalue/api/(.*)$ /home/web/inherentvalue/api/api.php
# Các mức nhật ký có sẵn: theo dõi8, ..., theo dõi1, gỡ lỗi, thông tin, thông báo, cảnh báo,
# lỗi, chí mạng, cảnh báo, nổi lên.
# Cũng có thể cấu hình loglevel cho cụ thể
# mô-đun, ví dụ:
#LogLevel thông tin ssl:cảnh báo
Nhật ký lỗi ${APACHE_LOG_DIR}/error.log
Nhật ký tùy chỉnh ${APACHE_LOG_DIR}/access.log kết hợp
Vị trí đặt tiêu đề "juancito"
Bộ tiêu đề Vị trí "pedrito"
Tiêu đề đặt MyHeader "Xin chào Joe. Apache mất %D micro giây để phục vụ yêu cầu này."
# Đối với hầu hết các tệp cấu hình từ conf-available/, đó là
# được bật hoặc tắt ở cấp độ toàn cầu, có thể
# bao gồm một dòng cho chỉ một máy chủ ảo cụ thể. ví dụ như
# dòng sau chỉ bật cấu hình CGI cho máy chủ này
# sau khi nó đã bị vô hiệu hóa trên toàn cầu với "a2disconf".
#Bao gồm conf-có sẵn/phục vụ-cgi-bin.conf
</Máy chủ ảo>
# vim: cú pháp=apache ts=4 sw=4 sts=4 sr noet
Bí danh ở đó cho một dự án khác, tôi đang làm việc.
Ngoài ra, đầu ra của apache2ctl -M trông như thế này:
Các mô-đun đã tải:
core_module (tĩnh)
so_module (tĩnh)
watchdog_module (tĩnh)
http_module (tĩnh)
log_config_module (tĩnh)
logio_module (tĩnh)
version_module (tĩnh)
unixd_module (tĩnh)
access_compat_module (được chia sẻ)
alias_module (được chia sẻ)
auth_basic_module (được chia sẻ)
authn_core_module (được chia sẻ)
authn_file_module (được chia sẻ)
authz_core_module (đã chia sẻ)
authz_host_module (được chia sẻ)
authz_user_module (được chia sẻ)
autoindex_module (được chia sẻ)
deflate_module (được chia sẻ)
dir_module (được chia sẻ)
env_module (được chia sẻ)
filter_module (được chia sẻ)
headers_module (được chia sẻ) <- Đã bật.
mime_module (đã chia sẻ)
mpm_prefork_module (được chia sẻ)
đàm phán_mô-đun (được chia sẻ)
php_module (được chia sẻ)
reqtimeout_module (được chia sẻ)
viết lại_module (đã chia sẻ)
setenvif_module (đã chia sẻ)
status_module (được chia sẻ)
Vì vậy, sau đó tôi thử lệnh sau:
curl -i -s -k -v -X NHẬN "http://localhost/vmportal/css"
Và kết quả là thế này:
HTTP/1.1 301 được di chuyển vĩnh viễn
Ngày: Thứ tư, ngày 24 tháng 11 năm 2021 06:32:01 GMT
Máy chủ: Apache/2.4.48 (Debian)
Vị trí: http://localhost/vmportal/css/
Độ dài nội dung: 313
Loại nội dung: văn bản/html; bộ ký tự = iso-8859-1
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><đầu>
<title>301 Đã di chuyển vĩnh viễn</title>
</head><body>
<h1>Đã di chuyển vĩnh viễn</h1>
<p>Tài liệu đã được di chuyển <a href="http://localhost/vmportal/css/">tại đây</a>.</p>
<giờ>
<address>Máy chủ Apache/2.4.48 (Debian) tại cổng 80 trên máy chủ cục bộ</address>
</body></html>
Tôi có nên thấy BẤT KỲ tiêu đề nào mà tôi đã đặt trong phản hồi không?
Bất cứ ai có thể cho tôi biết những gì tôi có thể làm sai? Hoặc vấn đề có thể là gì? Hoặc thậm chí làm thế nào để gỡ lỗi nó? (Không có gì trong nhật ký lỗi hoặc nhật ký truy cập, trong trường hợp bạn đang thắc mắc).