Gần đây tôi đã nâng cấp từ Apache 2.2 lên 2.4 (Tôi biết, tôi nâng cấp chậm, đừng ghét tôi). Tôi có máy chủ ảo sau:
<VirtualHost _default_:30000>
DocumentRoot /opt/phpmyadmin
ErrorLog ${APACHE_LOG_DIR}/error.log
<Directory /opt/phpmyadmin>
Options -Indexes +IncludesNOEXEC +FollowSymLinks
Require all granted
</Directory>
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
LogLevel warn
</VirtualHost>
Điều này đã làm việc trước đây bằng cách sử dụng cho phép từ tất cả
cú pháp và HTTPS đang hoạt động hoàn hảo đối với các máy chủ ảo khác trên cổng 443. Tuy nhiên, khi tôi truy cập https://localhost:30000
, nó phục vụ nội dung HTTP thay vì HTTPS. Đây cũng là máy chủ ảo duy nhất sử dụng cổng 30000, vì vậy tôi cho rằng đó không thể là do xung đột với các máy chủ ảo khác được ưu tiên.
Yêu cầu HTTPS:
$ cuộn tròn -v https://localhost:30000
* Xây dựng lại URL thành: https://localhost:30000/
* Tên máy chủ KHÔNG được tìm thấy trong bộ đệm DNS
* Đang cố gắng ::1...
* Đã kết nối với cổng localhost (::1) 30000 (#0)
* đặt thành công vị trí xác minh chứng chỉ:
* Tệp CA: không có
CApath: /etc/ssl/certs
* SSLv3, bắt tay TLS, Xin chào khách hàng (1):
* lỗi:140770FC:SSL thường trình:SSL23_GET_SERVER_HELLO:giao thức không xác định
* Đóng kết nối 0
curl: (35) lỗi: 140770FC: SSL thường trình: SSL23_GET_SERVER_HELLO: giao thức không xác định
Điều này sau đó tạo ra thông tin sau trong nhật ký truy cập Apache:
127.0.0.1:80 XXX.XXX.XXX.149 - - [04/Oct/2021:13:14:37 -0400] "\x16\x03\x01\x02" 400 0 "-" "-"
yêu cầu HTTP
$ cuộn tròn -v http://localhost:30000
* Xây dựng lại URL thành: http://localhost:30000/
* Tên máy chủ KHÔNG được tìm thấy trong bộ đệm DNS
* Đang cố gắng ::1...
* Đã kết nối với cổng localhost (::1) 30000 (#0)
> NHẬN / HTTP/1.1
> Tác nhân người dùng: curl/7.38.0
> Máy chủ: localhost:30000
> Chấp nhận: */*
>
< HTTP/1.1 200 OK
< Ngày: Thứ Hai, ngày 04 tháng 10 năm 2021 16:47:46 GMT
* Server Apache không bị blacklist
< Máy chủ: Apache
< Thay đổi: Chấp nhận-Mã hóa
< Độ dài nội dung: 481
< Kiểu nội dung: text/html;charset=UTF-8
<
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<đầu>
<title>Chỉ mục của /</title>
</head>
<body>
<h1>Chỉ mục của /</h1>
<bảng>
<tr><th valign="top"><img src="/icons/blank.gif" alt="[ICO]"></th><th><a href="?C=N;O= D">Tên</a></th><th><a href="?C=M;O=A">Sửa lần cuối</a></th><th><a href="?C =S;O=A">Kích thước</a></th><th><a href="?C=D;O=A">Mô tả</a></th></tr>
<tr><th colspan="5"><hr></th></tr>
<tr><th colspan="5"><hr></th></tr>
</bảng>
</body></html>
Chỉnh sửa:
Tôi chỉ nhận thấy một điều. Tôi có -Chỉ số
set, nhưng nội dung HTTP được trả về là một chỉ mục thư mục. Vì vậy, tôi nghĩ rằng có thể bằng cách nào đó một máy chủ ảo khác đang được sử dụng. Tôi vẫn không biết làm thế nào điều đó có thể xảy ra vì đây là người duy nhất sử dụng cổng 30000.