Magento – cronjob / Cron.php không được thực hiện

Sau khi thay đổi từ một 1.5er Magento trên 1.9.X Magento có vấn đề với các công việc định kỳ. Khi ông được dễ dàng 1.5er (năm) bởi các máy chủ bằng cách gọi các URL http://www.shopadresse.de/cron.php thực hiện và cũng là AOE Scheduler là hài lòng.

Vâng nhưng đã được thay đổi trên máy chủ để một cửa hàng 1.9.X và công việc định kỳ đã không được thực hiện. Các URL đã được điều chỉnh cho phù hợp. Ngay cả trong cách gọi của nhãn hiệu các cron.php thông qua trình duyệt, không có gì xảy ra và AOE Scheduler chỉ nói, rằng không có “nhiệm vụ nhịp tim” đã được tìm thấy.

Giải pháp là bây giờ cron.php để mở trong thư mục gốc và sau đó dòng

$isShellDisabled = true;

thêm vào, để sau đó nó vẻ:

$disabledFuncs = explode(',', ini_get('Disable_functions'));
$isShellDisabled = is_array($disabledFuncs) ? in_array('Shell_exec', $disabledFuncs) : thật;
$isShellDisabled = true;
$isShellDisabled = (stripos(PHP_OS, 'thắng lợi') === sai) ? $isShellDisabled : thật;

Sau đó, các Cronjob làm việc hoàn hảo một lần nữa.

Tuy nhiên, nó cũng có thể chạy các cron.php qua .htaccess để ngăn chặn. Do đó xem xét tốt nhất trước khi thời gian trong tập tin này, liệu có (thường ở cuối) Dòng như ví dụ.

###########################################
## Từ chối truy cập đến cron.php
    <Tệp cron.php>

############################################
## bỏ ghi chú dòng tiếp theo để cho phép truy cập cron với quyền cơ sở HTTP
## http://httpd.apache.org/docs/2.2/howto/auth.html
##
## Cảnh báo: .tập tin htpasswd nên được đặt ở một nơi không thể truy cập từ các trang web.
## Điều này là để folks không thể tải về các tập tin mật khẩu.
## Ví dụ, nếu tài liệu của bạn được phục vụ ra khỏi / usr / local / apache / htdocs
## bạn có thể muốn đặt các tập tin mật khẩu(S) trong / usr / local / apache /.

        #AuthName "cron auth"
        #AuthUserFile ../.htpasswd
        #AuthType cơ bản
        #Require-người dùng hợp lệ

############################################

        Đặt hàng cho phép,phủ nhận
        Tư chôi tât cả

    </Các tập tin>

có mặt.

Điều này ngăn cản yêu cầu này để thực hiện các cron.php. Người ta không cần thiết phải loại bỏ nó hoàn toàn, nhưng có thể cho máy chủ của riêng họ thêm một ngoại lệ như ví dụ.

    <Tệp RELEASE_NOTES.txt>
        cho phép đặt hàng,phủ nhận
        Cho phép từ HIER.DIE.SERVER.IP
        tư chôi tât cả
    </Các tập tin>

Kết hợp với sự thay đổi của cron.php trên, điều này làm việc khá tốt.

cập nhật từ 18.10.2017

Từ phiên bản Apache 2.4 scheint o.g. Cách không để gấp. Do đó, chúng tôi đã viết lại phần này của .htaccess như sau:

###########################################
## Từ chối truy cập đến cron.php
<Tệp cron.php>

############################################
## bỏ ghi chú dòng tiếp theo để cho phép truy cập cron với quyền cơ sở HTTP
## http://httpd.apache.org/docs/2.2/howto/auth.html
##
## Cảnh báo: .tập tin htpasswd nên được đặt ở một nơi không thể truy cập từ các trang web.
## Điều này là để folks không thể tải về các tập tin mật khẩu.
## Ví dụ, nếu tài liệu của bạn được phục vụ ra khỏi / usr / local / apache / htdocs
## bạn có thể muốn đặt các tập tin mật khẩu(S) trong / usr / local / apache /.

#Yêu cầu người dùng hợp lệ

############################################

    Yêu cầu tất cả bị từ chối
    Yêu cầu ip your.IP.address.here

</Các tập tin>

Này hoạt động tốt. Bạn có thể viết ra cách các địa chỉ IP duy nhất một phần. thay vì 127.0.0.1 bạn cũng có thể 127.0 Viết và sau đó là hai lĩnh vực cuối cùng sẽ có vấn đề.

Được sử dụng trong Magento Version 1.9 bình luận? bổ sung? Ghi chú? vui vẻ!

Xuất bản bởi sợi Dệt

từ 2009 Tôi đã làm việc chặt chẽ với Magento. Tôi bắt đầu với việc tạo ra và hoạt động của các cửa hàng B2C. Điều này đã được mở rộng thông qua công việc của tôi trong lĩnh vực logistics. Điều này dẫn đến hệ thống B2E đầu tiên chuyên. Hôm nay tôi làm việc ngày một ngày với B2C thú vị, B2B- và các dự án B2E và báo cáo trong blog này về những thách thức và đưa ra lời khuyên trong cuộc.

Để lại một trả lời

Địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu *