Hướng dẫn run php script in background ubuntu - chạy tập lệnh php trong ubuntu nền

Tôi có một kịch bản PHP. Tôi muốn chạy điều này trong nền trong ubuntu. Tôi đã thử sử dụng & sau khi mở rộng .php

php filename.php &

Nó hiển thị một cái gì đó như: "[1] 15996" Điều này. Tôi không hiểu ý nghĩa của điều này. Xin ai đó giúp tôi với điều này. Tôi nên làm gì để chạy tập lệnh PHP trong nền. và làm cách nào để kiểm tra nó. Tôi đã sử dụng lệnh "Top" để kiểm tra các tệp đang chạy. Nhưng tôi chỉ hiển thị thiết bị đầu cuối đang chạy và không hiển thị tệp chính xác mà IAM đang chạy. làm ơn cũng giúp tôi điều này

Que: 1) Cách chạy tập lệnh PHP trong nền trong Ubuntu 2) Làm cách nào để kiểm tra xem nó có chạy hay không

Hỏi ngày 15 tháng 10 năm 2013 lúc 6:16Oct 15, 2013 at 6:16

Hướng dẫn run php script in background ubuntu - chạy tập lệnh php trong ubuntu nền

Đây là câu hỏi của tôi. Tôi đã tìm ra câu trả lời cho câu hỏi của tôi. Vì vậy, tôi muốn chia sẻ với tất cả các bạn. câu trả lời là

Chỉ cần nhập lệnh

nohup php .php &

Quá trình sẽ bắt đầu chạy và bạn sẽ tìm thấy số quy trình như tôi đã tìm thấy "15996". Một số.

Bây giờ nhập "TOP" vào thiết bị đầu cuối Ubuntu .U sẽ tìm thấy quá trình chạy với cùng một số quy trình mà bạn có

Cảm ơn tất cả vì đã nói với câu hỏi của tôi.

Tôi hy vọng trong tương lai, bài đăng này có thể giúp một số

cảm ơn

Đã trả lời ngày 16 tháng 10 năm 2013 lúc 7:32Oct 16, 2013 at 7:32

Jan Srkljan Srkljan srkl

451 Huy hiệu bạc9 Huy hiệu đồng1 silver badge9 bronze badges

[1] 15996 có nghĩa là quá trình đang chạy và ID quy trình là 15996. Có khả năng tập lệnh bạn đang chạy được thực hiện trước khi bạn tìm thấy nó trong danh sách quy trình của mình, trừ khi bạn biết nó khá tốn thời gian. Bạn có thể kiểm tra xem nó có đang chạy bằng cách làm không:

ps -aux | grep 15996

Đã trả lời ngày 15 tháng 10 năm 2013 lúc 6:20Oct 15, 2013 at 6:20

Hamza Kubbahamza KubbaHamza Kubba

2.23912 huy hiệu bạc11 huy hiệu đồng12 silver badges11 bronze badges

0

Tôi đã làm một cái gì đó tương tự ngày hôm qua.

Để chạy một tập lệnh, chỉ cần sử dụng crond để thực thi nó, bạn nên xem xét điều này: thực thi PHP với crontab.

Để kiểm tra xem nó đang chạy, bạn có thể sử dụng lệnh ps không, một cái gì đó tương tự như thế này:

ps -ef | grep filename.php | grep -v grep > /dev/null
if [ $? -eq 0 ]; then
    echo "running"
else
    echo "not running"
fi

Đã trả lời ngày 15 tháng 10 năm 2013 lúc 6:29Oct 15, 2013 at 6:29

Sal00mSal00mSal00m

2.9103 huy hiệu vàng21 Huy hiệu bạc33 Huy hiệu đồng3 gold badges21 silver badges33 bronze badges

Tôi đã thử mã dòng lệnh sau để chạy một bản thảo PHP trong nền.

php server.php &

Những công việc này. Vấn đề là: Nếu tôi đóng cửa sổ thiết bị đầu cuối trên máy tính của mình, bản thảo PHP cũng dừng lại. Tôi muốn nó chạy "vô hạn". Đó là một máy chủ WebSocket nên nó phải chạy liên tục.

Làm thế nào tôi có thể đạt được điều này?

Cảm ơn trước!

EDIT: Tôi đã tìm thấy câu trả lời (tôi đoán là cách câu hỏi này).

nohup php server.php &

Đã hỏi ngày 4 tháng 7 năm 2018 lúc 11:35Jul 4, 2018 at 11:35

Bạn có thể sử dụng

nohup php .php &
0 để mở một thiết bị đầu cuối ảo, trong đó tập lệnh có thể chạy.

Tôi khuyên bạn nên sử dụng

nohup php .php &
1. Sau đó, bạn có thể chạy tập lệnh của bạn (ngay cả khi không có &). Với Ctrl + A, D bạn có thể ngắt kết nối khỏi Termial. Bạn có thể kết nối lại với
nohup php .php &
2 trở lại thiết bị đầu cuối.

Đã trả lời ngày 4 tháng 7 năm 2018 lúc 11:47Jul 4, 2018 at 11:47

Hướng dẫn run php script in background ubuntu - chạy tập lệnh php trong ubuntu nền

Boba Fitboba phù hợpBoba Fit

1.51413 Huy hiệu bạc25 Huy hiệu đồng13 silver badges25 bronze badges

Mặc dù câu trả lời của Boba Fit sẽ giúp bạn, tôi nghĩ rằng có một cách tốt hơn để chạy máy chủ của bạn trong nền. Trong trường hợp khởi động lại, bạn có thể muốn máy chủ của mình chạy trở lại.

Tôi đã sử dụng người giám sát trong một trường hợp sử dụng tương tự. Tôi trường hợp của tôi đó là một quy trình PHP dài để lên lịch các tác vụ nền bằng cách sử dụng JMSJOBQUEUEBUNDLE.

Điều duy nhất bạn phải thiết lập là người giám sát và định cấu hình quy trình của bạn:

[program:your_websocket_server]
command=php server.php &
process_name=%(program_name)s
numprocs=1
directory=/tmp
autostart=true
autorestart=true
startsecs=5
startretries=10
user=www-data
redirect_stderr=false
stdout_logfile=%capistrano.shared_dir%/jms_job_queue_runner.out.log
stdout_capture_maxbytes=1MB
stderr_logfile=%capistrano.shared_dir%/jms_job_queue_runner.error.log
stderr_capture_maxbytes=1MB

Đã trả lời ngày 4 tháng 7 năm 2018 lúc 19:39Jul 4, 2018 at 19:39

Stephan Vierkantstephan VierkantStephan Vierkant

1.0982 Huy hiệu vàng13 Huy hiệu bạc34 Huy hiệu đồng2 gold badges13 silver badges34 bronze badges

PHP có thể chạy trong nền không?

Trong PHP, chúng tôi không thể trực tiếp chạy bất kỳ công việc quy trình nào trong nền ngay cả khi công việc cha mẹ chấm dứt.we can not directly run any process job in the background even if the parent job terminates.

Làm cách nào để chạy tập lệnh PHP trong thiết bị đầu cuối Ubuntu?

Bạn chỉ cần làm theo các bước để chạy chương trình PHP bằng dòng lệnh ...
Mở cửa sổ thiết bị đầu cuối hoặc dòng lệnh ..
Goto thư mục hoặc thư mục được chỉ định có các tệp PHP có mặt ..
Sau đó, chúng ta có thể chạy mã PHP bằng lệnh sau: php file_name.php ..

Làm cách nào để chạy tập lệnh PHP liên tục?

Bạn có thể đặt một tác vụ (như lệnh hoặc script) trong một nền bằng cách nối thêm A & ở cuối dòng lệnh.Lệnh & Toán tử đặt lệnh vào nền và giải phóng thiết bị đầu cuối của bạn.Lệnh chạy trong nền được gọi là một công việc.Bạn có thể nhập lệnh khác trong khi lệnh nền đang chạy.appending a & at the end of the command line. The & operator puts command in the background and free up your terminal. The command which runs in background is called a job. You can type other command while background command is running.

Làm cách nào để chạy tệp PHP trong ubuntu?

Làm thế nào để chạy PHP trên Ubuntu..
Sudo Apt-get Cài đặt PHP.....
Để khởi động lại máy chủ web Apache, chỉ cần nhập lệnh sau sudo gedit/var/www/html/index.....
Trong hướng dẫn này, tôi sử dụng GEDIT để tạo các trang web của tôi nhưng bạn cũng có thể cài đặt IDE như Netbeans và quản lý các dự án của bạn từ đó theo cách hiệu quả hơn ..