Điểm:0

Các tiêu đề được đặt bằng các mô-đun mod_headers trong apache đang bị bỏ qua hoàn toàn

lá cờ th

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).

digijay avatar
lá cờ mx
Bạn nhận được phản hồi http 301, hãy thử lại lệnh `curl` như sau: `curl -I http://localhost/vmportal/css/`. Ngoài ra, đổi tên tiêu đề của bạn thành `X-myHeader`.
lá cờ th
Thử nó. Thực sự thì không có gì thay đổi ngoại trừ việc tôi không nhận được kết quả HTML trên konsole của mình

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.