Lệnh Wget do cron chạy có thể nạp cấu hình của người dùng khác và một môi trường khác so với cùng lệnh đó trong một terminal tương tác.

Với GNU Wget 1.x, hãy đặt các thiết lập liên quan của công việc vào một tệp mà tài khoản của nó có thể đọc:

use_proxy = on
http_proxy = http://proxy.example:8080
https_proxy = http://proxy.example:8080

Một crontab người dùng hiện có có thể chọn rõ ràng tệp đó:

15 3 * * * /usr/bin/wget --config=/home/reports/wget-proxy.conf --output-document=/home/reports/report.csv https://data.example/report.csv

Thay tệp thực thi, cấu hình, đường dẫn đầu ra và URL cho công việc. Đường dẫn tuyệt đối loại bỏ một khác biệt nữa so với thư mục làm việc của shell tương tác.

Mặc định, Wget đọc một tệp khởi động toàn cục rồi đến tệp khởi động của người dùng. WGETRC chọn vị trí của tệp sau; nếu không, Wget tìm $HOME/.wgetrc. Vì vậy HOME và tài khoản mà công việc theo lịch dùng có ý nghĩa.

Hãy đặt các mục proxy cần thiết một cách có chủ đích trong tệp đã chọn. Danh sách proxy HTTP có thể cung cấp URL ứng viên cho việc tải báo cáo công khai trên một tuyến proxy công cộng được phép. Tệp .wgetrc của tài khoản root không tự động là cấu hình của người dùng khác, và việc sao chép toàn bộ tệp cũng có thể sao chép các tùy chọn không liên quan.

Khi cấu hình khớp, hãy giữ lại lỗi Wget thực tế từ công việc. Kết nối proxy bị từ chối, thử thách 407 và lỗi chứng chỉ đích cần các bước tiếp theo khác nhau.

Bài viết liên quan