Hướng dẫn khắc phục sự cố Web
ServBay hỗ trợ sử dụng Caddy, NGINX, Apache làm máy chủ Web mặc định. Trong quá trình sử dụng hàng ngày, người dùng có thể gặp phải một số vấn đề như không thể mở trang web. Dưới đây là một số phương pháp giải quyết các vấn đề thường gặp.
Sử dụng công cụ khắc phục sự cố đi kèm với ServBay
ServBay cung cấp một công cụ chẩn đoán sự cố rất mạnh mẽ. Chúng tôi khuyên bạn nên sử dụng công cụ khắc phục sự cố đi kèm với ServBay để tự chẩn đoán và khắc phục.
Mở ứng dụng ServBay, tìm khắc phục sự cố
trong thanh điều hướng bên trái để truy cập vào công cụ chẩn đoán sự cố đi kèm với ServBay.
Kiểm tra tệp cấu hình
Kiểm tra Caddyfile
Sử dụng chức năng xác minh tích hợp của Caddy để xác minh Caddyfile có đúng không. Vui lòng chạy lệnh sau
$ /Applications/ServBay/bin/caddy validate -c /Applications/ServBay/etc/caddy/Caddyfile
Nếu trả về Valid configuration
, nghĩa là mọi thứ đều bình thường. Nếu trả về các mã lỗi khác, vui lòng thực hiện các bước tiếp theo theo hướng dẫn từ mã lỗi. (Lưu ý: Lệnh trên sẽ xuất ra nhiều thông tin INFO và WARN, điều này là bình thường và sẽ không ảnh hưởng đến việc vận hành dịch vụ.)
Lỗi chứng chỉ
Nếu xuất hiện lỗi như sau: loading certificates: open xxxxx: no such file or directory
, thì có nghĩa là tệp chứng chỉ không tồn tại. Vui lòng kiểm tra địa chỉ của tệp chứng chỉ xem có đúng không.
2024/12/09 17:24:16.970 INFO using config from file {"file": "/Applications/ServBay/etc/caddy/Caddyfile"}
2024/12/09 17:24:16.991 INFO adapted config to JSON {"adapter": "caddyfile"}
2024/12/09 17:24:16.991 WARN Caddyfile input is not formatted; run 'caddy fmt --overwrite' to fix inconsistencies {"adapter": "caddyfile", "file": "/Applications/ServBay/etc/caddy/Caddyfile", "line": 8}
2024/12/09 17:24:16.999 INFO tls.cache.maintenance started background certificate maintenance {"cache": "0x1400121f300"}
2024/12/09 17:24:17.006 INFO tls.cache.maintenance stopped background certificate maintenance {"cache": "0x1400121f300"}
Error: loading http app module: provision http: getting tls app: loading tls app module: provision tls: loading certificates: open /Applications/ServBay/ssl/private/tls-certs/mail.servbay.host/mail.servbay.host.1crt: no such file or directory
2
3
4
5
6
7
Lỗi thư mục trang web
Nếu xuất hiện lỗi sau: parsing caddyfile tokens for 'root': too many arguments
, vui lòng kiểm tra xem trong đường dẫn thư mục trang web có tồn tại khoảng trắng hay không. Đây là một lỗi rất phổ biến.
Chẳng hạn, root * /Applications/ServBay/www/public web
, có một khoảng trắng giữa public
và web
, sẽ được coi là hai tham số, dẫn đến lỗi. Cách thiết lập đúng là sử dụng dấu ngoặc kép (") để bao quanh đường dẫn. Ví dụ: root * "/Applications/ServBay/www/public web"
.
Chúng tôi khuyên bạn không nên bao gồm khoảng trắng và các ký tự đặc biệt trong bất kỳ tên tệp hoặc đường dẫn nào. Đối với việc phân tách các từ, bạn có thể sử dụng các ký tự -
hoặc _
, chẳng hạn như: public-folder
, public_dir
.
2024/12/09 17:26:37.371 INFO using config from file {"file": "/Applications/ServBay/etc/caddy/Caddyfile"}
Error: adapting config using caddyfile: parsing caddyfile tokens for 'root': too many arguments; should only be a matcher and a path, at /Applications/ServBay/etc/caddy/Caddyfile:1388
2
3
Lỗi quy tắc Rewrite
Việc sử dụng quy tắc Rewrite không chính xác trong Caddy, chẳng hạn như việc sử dụng trực tiếp quy tắc của NGINX, cũng sẽ dẫn đến lỗi.
Kiểm tra cấu hình NGINX
Sử dụng lệnh sau để kiểm tra xem cấu hình NGINX có đúng không:
$ /Applications/ServBay/bin/nginx -t
Nếu cấu hình đúng, sẽ hiển thị:
nginx: the configuration file /Applications/ServBay/etc/nginx/nginx.conf syntax is ok
nginx: configuration file /Applications/ServBay/etc/nginx/nginx.conf test is successful
2
Các lỗi thường gặp bao gồm:
- Lỗi cú pháp (như thiếu dấu chấm câu)
- Đường dẫn tệp không đúng
- Xung đột cổng
Kiểm tra cấu hình Apache
Sử dụng lệnh sau để kiểm tra cấu hình Apache:
$ /Applications/ServBay/bin/apachectl configtest
Các lỗi thường gặp bao gồm:
- Tải mô-đun không thành công
- Lỗi cú pháp trong tệp .htaccess
- Thiết lập quyền thư mục không đúng
Xử lý lỗi 500
Lỗi 500 nội bộ máy chủ là lỗi phổ biến của máy chủ Web, có thể do nhiều nguyên nhân khác nhau gây ra:
Các bước kiểm tra chung
Kiểm tra nhật ký lỗi máy chủ:
- Caddy:
/Applications/ServBay/var/logs/caddy/error.log
- NGINX:
/Applications/ServBay/var/logs/nginx/error.log
- Apache:
/Applications/ServBay/var/logs/apache/error.log
- Caddy:
Kiểm tra xem dịch vụ PHP có đang chạy không
bashps aux | grep php-fpm
1Kiểm tra lỗi PHP (nếu sử dụng PHP):
/Applications/ServBay/var/logs/php/php_error.log
Kiểm tra quyền tệp:
bash$ ls -la /Applications/ServBay/www/your-site
1Đảm bảo rằng người dùng máy chủ Web có quyền đọc
Lỗi 500 đặc trưng của Caddy
- Kiểm tra xem cấu hình FastCGI có đúng không
- Đảm bảo rằng dịch vụ PHP-FPM đang chạy
- Xác nhận thiết lập proxy ngược
Lỗi 500 đặc trưng của NGINX
- Kiểm tra xem thiết lập
fastcgi_pass
có đúng không - Xác nhận rằng
client_max_body_size
đủ lớn - Kiểm tra cấu hình chỉ thị
try_files
Lỗi 500 đặc trưng của Apache
- Kiểm tra xem
mod_rewrite
có được bật không - Xác nhận nội dung tệp
.htaccess
- Kiểm tra thiết lập
AllowOverride
Quản lý dịch vụ
Khởi động lại dịch vụ
Nếu đã thay đổi cấu hình, cần khởi động lại dịch vụ tương ứng:
# Caddy
$ servbayctl restart caddy -all
# NGINX
$ servbayctl restart nginx -all
# Apache
$ servbayctl restart apache -all
2
3
4
5
6
7
8
Xem trạng thái dịch vụ
# Caddy
$ servbayctl status caddy -all
# NGINX
$ servbayctl status nginx -all
# Apache
$ servbayctl status apache -all
2
3
4
5
6
7
8
Khắc phục sự cố nâng cao
Nếu các phương pháp trên không giải quyết được vấn đề, bạn có thể thử:
- Tạm thời tắt tường lửa để kiểm tra
- Sử dụng
curl -v
để xem thông tin yêu cầu chi tiết - Kiểm tra trên các trình duyệt/thiết bị khác nhau
- Kiểm tra xem phân giải DNS có đúng không
Nếu cần thêm sự trợ giúp, vui lòng liên hệ với đội ngũ hỗ trợ kỹ thuật của ServBay.