Tôi tạo một lệnh giao diện điều khiển trong dự án của mình. Tôi muốn nó được thực hiện hàng ngày lúc 7 giờ tối Làm thế nào tôi có thể làm điều đó trong symfony2? Một cách làm cron php cơ bản hoặc symfony2 có cái gì thuận tiện hơn? Cảm ơnCông việc Cron trong symfony2
Trả lời
Bạn có thể sử dụng cơ bản cron. Trên debian hoặc ubuntu bạn có thể làm điều này:
crontab -e -u <username>
đâu tên là tên của người sử dụng mà nên thực hiện lệnh. Trong trình chỉnh sửa, thêm lệnh của bạn. Dưới đây là a good explanation cách hiển thị của dòng. Đối với lệnh Symfony2, thao tác này sẽ hoạt động:
* * * * * /usr/bin/php /var/www/symfony2/app/console your:command --option=123
Điều này sẽ thực hiện your:command --option=123
mỗi phút.
Trên một cửa sổ máy bạn có thể sử dụng lệnh ac
. Nó có sẵn cho windows 7 theo mặc định. Read the docs here. Nó sẽ giống như thế này:
AT 00:00 /every:M,T,W,Th,F "php /var/www/symfony2/app/console your:command --option=123"
Hãy chắc chắn rằng php
là available globaly hoặc đường dẫn đến tập tin php.exe
là đúng.
Bạn chỉ có thể thiết lập một cron trong crontab để thực hiện lệnh symfony của bạn,
ví dụ
0 19 * * */var/www/symfony/app/console YOUR_COMMAND
Không, bạn phải chạy lệnh dưới dạng người dùng www-data, nếu không nó có thể làm hỏng bộ nhớ cache. –
Tôi nghĩ đây là một câu hỏi hay. Gần đây tôi đã thực hiện một số công việc (sử dụng các thành phần ZF1, không phải MVC đầy đủ), nơi tất cả các loại phụ thuộc ẩn tồn tại trên các công việc cron để thực hiện các nhiệm vụ, và tôi phải dành nhiều thời gian thêm bình luận và tạo tài liệu để cảnh báo bất cứ ai đến sau tôi những gì những con rồng tồn tại, những gì họ đã làm, nơi họ đã được lưu trữ và như vậy.
Nó không bao giờ cho tôi liên tưởng sẽ có một thành phần ZF chỉ cho mục đích đó, rất nhiều phụ thuộc vào bộ điều khiển mặc dù ...
Xin lỗi tôi không trả lời câu hỏi trực tiếp của bạn mặc dù.
FWIW
Liên kết của bạn đã lỗi thời. – ferdynator
Đây có phải là câu trả lời không? – Trix
Chú ý đến người dùng bạn sử dụng để thực thi lệnh. Nếu bạn chạy nó như là root, root có thể sở hữu bộ nhớ cache của Symfony sau đó phá vỡ HTTP bên trang web của bạn (vì nginx sẽ chạy như người dùng www-data chẳng hạn).
Với Docker, tôi đang sử dụng phương pháp "setuser" hình ảnh nền phusion để buộc người dùng www-data.
- 1. Chạy một công việc Cron
- 2. Permission denied trong công việc cron COMAND
- 3. Cron Công việc trong khung chơi 2.0
- 4. Công việc Cron không chạy (trong dev)
- 5. Thiết lập công việc cron trong Windows
- 6. Tạo công việc Cron trong C#
- 7. công việc cron magento và bảng cron_scheduler
- 8. Cách thêm công việc cron vào linux
- 9. Xây dựng lịch biểu công việc cron
- 10. Cách chạy công việc Cron cho Node.js
- 11. Công việc CRON cho người viết mã
- 12. Tạo một công việc cron cho mysqldump
- 13. Công việc Cron ba ngày một lần
- 14. Công việc Cron trên Ubuntu cho php
- 15. Công việc cron có thực hiện việc hủy cron cuối cùng không?
- 16. Công việc Cron tạo tệp trống mỗi khi nó chạy
- 17. Chuyển hướng đầu ra của một công việc cron
- 18. cách thiết lập công việc cron từ tập lệnh php?
- 19. biểu thức cron cho mỗi> công việc 60 phút
- 20. Thời gian kích hoạt công việc Cron hoặc Quartz?
- 21. công việc cron sẽ không bao giờ thực hiện
- 22. công việc cron để tải lên tệp qua FTP
- 23. Công việc Cron - để chạy cứ 5 giây
- 24. Cách chạy cron job khi một công việc cron khác kết thúc?
- 25. Cách tạo một tác vụ cron trong Symfony2
- 26. Không thể cài đặt CRON việc
- 27. lỗi Cron với việc sử dụng backquotes
- 28. Làm cách nào để kiểm tra công việc cron trong Máy chủ cục bộ như WAMP?
- 29. Làm cách nào để hủy đăng ký công việc CRON trong AppEngine?
- 30. Có thể chạy một công việc cron trong một ứng dụng web không?
Jep, đó là cách để đi. –
os của tôi là window7. Tôi không thể chạy lệnh crontab trực tiếp. Vậy tôi nên làm gì đây? Cảm ơn bạn đã trả lời ur. @ byf-ferdy –
Tôi đã cập nhật câu trả lời của mình. – ferdynator