Điểm:0

Tùy chọn chỉ mục Apache hoạt động cho HTTP nhưng không hoạt động cho HTTPS

lá cờ lk

Tôi đang thử nghiệm với bản cài đặt gốc của Rocky Linux 8.4 và Apache 2.4. Tôi có một máy chủ ảo được định cấu hình và đang hoạt động, đồng thời tôi cũng đã định cấu hình chứng chỉ Lets Encrypt qua Certbot, điều này cũng hoạt động rất tốt.

Tôi muốn cho phép danh sách thư mục trên một thư mục cụ thể nên đã bật Chỉ mục tùy chọn, điều này hoạt động như mong đợi qua HTTP nhưng qua HTTPS tôi nhận được 403 Bị cấm. Tập lệnh Certbot đã chèn quy tắc viết lại nhưng tôi không nghĩ đó là vấn đề, tôi đã thử vô hiệu hóa quy tắc đó để có thể kiểm tra qua HTTP và không có sự khác biệt nào ngoài việc đưa nó vào đây trong trường hợp nó có liên quan.

Conf máy chủ ảo của tôi trông như thế này:

<VirtualHost *:80>
    ServerName test.prot0type.com
    ServerAlias test.prot0type.com
    DocumentRoot /var/www/test.prot0type.com

    <Directory /var/www/test.prot0type.com/test>
        Options +Indexes
    </Directory>

    RewriteEngine on
    RewriteCond %{SERVER_NAME} =test.prot0type.com
    RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

<VirtualHost *:443>
    ServerName test.prot0type.com
    ServerAlias test.prot0type.com
    DocumentRoot /var/www/test.prot0type.com

    <Directory /var/www/test.prot0type.com/test>
        Options +Indexes
    </Directory>

</VirtualHost>

truy cập http://test.prot0type.com/test/ hoạt động như mong đợi.

truy cập https://test.prot0type.com/test/ kết quả là 403 và trong nhật ký lỗi tôi nhận được:

Không thể phục vụ thư mục /var/www/test.prot0type.com/test/: Không tìm thấy Directory Index (index.html) phù hợp và chỉ mục thư mục do máy chủ tạo bị cấm bởi lệnh Options

Làm cách nào để tìm chỉ thị Tùy chọn nào đang thực hiện việc này? Tôi đã tìm kiếm tất cả các tệp conf nhưng không thể tìm thấy.

digijay avatar
lá cờ mx
Có vẻ như bạn không có cấu hình Virtualhost cho cổng 443, vì vậy bạn nhận được 403 nếu bạn đang cố kết nối với cổng đó.
tgflash avatar
lá cờ lk
Nhưng nó có các tệp máy chủ qua HTTPS cho máy chủ ảo này. Vấn đề duy nhất là cấu hình +Chỉ mục chỉ hoạt động cho HTTP. Tôi đã thử sao chép cấu hình máy chủ ảo và thay đổi cổng thành 443 nhưng điều đó cũng không hoạt động. Tôi nghĩ rằng phải có thứ gì đó ghi đè cài đặt ở nơi khác trong cấu hình nhưng tôi đã tìm kiếm tất cả các tệp và không thể tìm thấy nó.Có cách nào để chẩn đoán nơi một chỉ thị bắt nguồn từ đâu không?
tgflash avatar
lá cờ lk
Đã chỉnh sửa câu hỏi ban đầu để làm rõ cách tôi đã kiểm tra.
Michael Hampton avatar
lá cờ cz
Vui lòng hiển thị đầy đủ `` khối.
digijay avatar
lá cờ mx
Cấu hình 443 thiếu toàn bộ Cấu hình TLS/SSL (`SSLEngine On`, v.v.)
tgflash avatar
lá cờ lk
Ah! Cảm ơn những gợi ý, bây giờ tôi đã giải quyết nó. Khi kiểm tra các tệp conf, tôi đã bỏ lỡ rằng tập lệnh certbot tạo một ssl.conf riêng cho từng máy chủ ảo và đó là nơi có chỉ thị Tùy chọn bổ sung. Vì vậy, trong ví dụ của tôi, tệp này có tên là test.prot0type.com-le-ssl.conf Vì vậy, giải pháp là chỉnh sửa khối Máy chủ ảo trong tệp đó dành cho trường hợp cổng 443, vì vậy, danh sách thư mục hiện hoạt động cho cả Khu CNC Hòa Lạc và HTTPS. Cảm ơn những người đã chỉ cho tôi đi đúng hướng!

Đă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.