Cách sửa lỗi mod_authz_host Apache trong Linux



Hãy Thử Công Cụ CủA Chúng Tôi Để LoạI Bỏ Các VấN Đề

Khi cài đặt dịch vụ apache2 trên Red Hat Enterprise Linux, Arch, Scientific Linux, Debian Server, Ubuntu Server hoặc bất kỳ bản phân phối nào khác hỗ trợ nó, bạn có thể nhận thấy rằng bạn gặp lỗi về mô-đun mod_authz_host ngăn việc thực thi dịch vụ . Bạn có thể thấy lỗi này là sự cố bất cứ khi nào bạn khởi động lại dịch vụ apache2. Lỗi này thường xuất hiện dưới dạng một cảnh báo cú pháp về dòng đầu tiên của nhưng về mặt lý thuyết bạn có thể gặp một số lỗi khác nhau.



Bất kể dòng nào bạn có thể gặp sự cố, bản sửa lỗi ít liên quan đến việc mod_authz_host không được cài đặt hoặc thậm chí không được tải trong RAM. Trên thực tế, nếu bạn gặp lỗi này, điều đó có nghĩa là dịch vụ máy chủ apache2 đang tải chính xác mô-đun. Vấn đề chỉ liên quan đến thực tế là một chỉ thị không đúng chỗ ở đâu đó và việc sắp xếp lại mã sẽ khắc phục sự cố của bạn khá nhanh chóng. Xin lưu ý rằng đôi khi bạn sẽ thấy hướng dẫn cài đặt mod_authz_host trong apache2, điều này không liên quan đến cuộc thảo luận này. Lỗi của bạn không đến từ việc thiếu một gói cụ thể cũng như không đến từ bất kỳ loại phụ thuộc nào chưa được thực hiện. Cách các nhà phát triển lựa chọn để cụm từ những lỗi này dẫn đến những quan niệm sai lầm phổ biến này.



Sửa chỉ thị mô-đun limit.conf

Để phục vụ cho việc thảo luận, chúng tôi sẽ sử dụng bách khoa toàn thư phân phối Linux tại distrowatch.com cho các ví dụ của chúng tôi. Tài liệu apache2 chính thức sử dụng dev.example.com làm ví dụ và trong mọi trường hợp, bạn sẽ không muốn sử dụng một trong hai địa chỉ này.



Mở tệp bằng trình soạn thảo văn bản. Vì đây là một thư mục được bảo vệ, bạn sẽ cần có quyền truy cập root. Chúng tôi đã sử dụng , nhưng bạn cũng có thể sử dụng vi hoặc một trình soạn thảo văn bản khác mà bạn thích. Bạn thậm chí không nhất thiết phải sử dụng trình chỉnh sửa bảng điều khiển, nhưng hãy đảm bảo sử dụng gksu thay vì sudo nếu thích hợp để làm như vậy.

Khi bạn đã tải xong tệp, hãy chú ý đến nội dung đọc, ví dụ:



Đơn hàng từ chối, cho phép

Tư chôi tât cả

Cho phép từ distrowatch.com

Văn bản này chỉ nên tồn tại bên trong các khối. Lưu ý khoảng trống trong thẻ đầu tiên. Nếu bạn có dòng văn bản đó nổi xung quanh bên ngoài bất kỳ khối nào, hãy thêm các thẻ xung quanh nó hoặc di chuyển nó để nó đọc như vậy:

Đơn hàng từ chối, cho phép

Tư chôi tât cả

Cho phép từ distrowatch.com

Hãy nhớ rằng bạn sẽ cần thay thế distrowatch.com bằng URL thực mà bạn đang làm việc. Nếu bạn tìm thấy bất kỳ dòng nào tham chiếu trực tiếp đến dev.example.com, thì bạn đã sao chép chúng trực tiếp từ mã mẫu hoặc chúng được thêm vào theo mặc định. Miền example.com chỉ tồn tại để minh họa trong các tài liệu kỹ thuật và không có mục đích thực sự. Tài liệu chính thức tại httpd.apache.org/docs/2.2/howto/access.html thực sự tham khảo chúng. Bạn có thể xóa chúng một cách an toàn khi thêm văn bản mới vào.

Nếu bạn cần bao gồm một thư mục trong tệp limited.conf của mình, thì bạn có thể thay thế thẻ với nhưng bạn cần đảm bảo duy trì khoảng trống trong thẻ đầu tiên một lần nữa. Đảm bảo lưu tài liệu và sau đó đóng nó trước khi khởi động lại dịch vụ apache2. Từ đây trở đi, bạn sẽ không gặp bất kỳ vấn đề nào nữa.

Đây là ý nghĩa của máy chủ apache khi nó trả về một lỗi như sau:

Lỗi thực tế sẽ có một số dòng thay cho octothorpe, nhưng nó cho thấy rằng các lệnh không được bao bọc an toàn bên trong các thẻ đã nói. Bạn có thể muốn điều hướng trực tiếp đến dòng được đưa ra trong lỗi khi gỡ lỗi tập lệnh để kiểm tra xem có vấn đề gì với nó. Trong khi lỗi được đề cập sẽ cho bạn biết rằng nhật ký lỗi Apache có thể có nhiều thông tin hơn, nó có thể chỉ củng cố các khái niệm tương tự được thảo luận ở đây.

Các lỗi cú pháp trong tương lai có thể được sửa theo cách tương tự. Bạn có thể thấy rằng sau khi sửa lỗi đó, dịch vụ apache2 lại xuất hiện một lỗi khác. Điều này là bình thường, điều đó nghe có vẻ kỳ lạ vì nó chỉ thực thi mã cho đến dòng đầu tiên mà nó phát hiện có vấn đề. Nếu có vấn đề gì xảy ra tiếp theo, thì nó sẽ không bao giờ đến với họ. Nếu bạn gặp bất kỳ vấn đề nào như vậy, hãy chú ý đến số dòng khi chỉnh sửa tập tin. Nếu bạn đang sử dụng nano để chỉnh sửa tệp, thì bạn luôn có thể giữ phím Ctrl và nhấn phím C để tìm dòng con trỏ của bạn hiện đang ở trên. Điều này sẽ làm cho quá trình gỡ lỗi diễn ra suôn sẻ hơn nhiều.

Bạn có thể thấy rằng bạn có nhiều khối trôi nổi xung quanh theo cách không gắn với bất kỳ thứ gì. Mỗi người trong số này cần phải có thẻ trên chúng. Loại bỏ các khối bổ sung bất cứ lúc nào mà bạn thấy rằng bạn có nhiều bản sao của cùng một URL với các lệnh chính xác giống nhau vì những bản sao này có thể gây ra sự cố. Bạn thường chỉ cần có một bản sao của bất kỳ URL cụ thể nào, vì bạn không nên chuyển các chỉ thị bổ sung về một URL cho máy chủ apache2 vì cuối cùng chúng có thể phản công lẫn nhau.

3 phút đọc