Tengo un script php bastante largo y cada vez que mi conexión a Internet se salta por un segundo, el navegador parece detener el script. No puedo sentarme durante 8 horas para que se ejecute el script, así que pensé que podría ejecutarlo a través de ssh y volver al día siguiente y obtener mi archivo de salida. Sin embargo, escribir simplemente el nombre de las secuencias de comandos en ssh no parece funcionar. ¿Hay algún comando especial para ejecutar scripts php a través de ssh?¿Cómo ejecuto un script php a través de SSH?
Respuesta
En general, usted debe ser capaz de ejecutar el script desde la línea de comandos como ésta
php myscript.php
Hacerlo en un host remoto a través de SSH se podría hacer como esto
ssh [email protected].com "php myscript.php"
intento
php script.php.
Si eso no funciona, usted tendría que localizar el ejecutable php y luego ejecutarlo.
Por cierto, puede utilizar la pantalla, por lo que si se pierde la conexión a la computadora, la secuencia de comandos aún se ejecuta.
¿qué quieres decir con pantalla de uso? Nunca he oído hablar de eso –
He explicado la pantalla en mi publicación: D – Mez
Asumí que usas linux. Screen es un programa que mantiene los programas en ejecución incluso cuando el shell está cerrado. Puede restaurar fácilmente la sesión para que el script no se cancele. Ver http://www.gnu.org/software/screen/ – Ikke
Como alternativa, simplemente puede llamar al ignore_user_abort()
y cerrar su navegador después de golpear la página.
, excepto que esto no necesariamente funcionará, y PHP puede simplemente detenerse en su tiempo de espera. – Mez
En realidad, funcionará. Si el límite de tiempo de PHP entra en juego, puede usar set_time_limit – Greg
¿No ignore_user_abort solo funciona cuando php se ejecuta como un módulo de apache? – troelskn
Si su conexión a Internet se está cayendo, entonces esto probablemente también sea un problema en SSH, y bueno, tener una ventana SSH abierta no siempre es lo mejor que puede hacer (lo que sucede si se cierra accidentalmente) la ventana ssh?)
Sugeriría SSHing en el servidor, y luego ejecutaría un programa llamado "screen", que continuará funcionando independientemente de lo que ejecute dentro de él, incluso si su conexión cae.
Para ello, en primer SSH en el servidor, y escriba
screen
Esto cargará encima de la pantalla, pulse intro para omitir la pantalla de bienvenida
Ahora, ejecute el script PHP
php /path/to/your/php/script.php
esto comenzará PHP en funcionamiento,
Ahora puede cerrar la ventana si lo desea, y la secuencia de comandos siempre está en funcionamiento
Para volver a la sesión de pantalla, conectar con el servidor y ejecutar el comando
screen -raAD
que lo reconectará a su sesión, como si hubiera tenido la ventana abierta todo el tiempo.
Esto es realmente muy bueno para ejecutar scripts de largo aliento, o incluso para la ejecución de una sesión de IRC basado en la consola: D
Además de lo que todo el mundo dice, es probable que desee utilizar nohup
también.
ssh [email protected] "nohup php script.php"
De esa manera se va a mantener en funcionamiento incluso si su conexión ssh cae. También puede usar screen
en lugar de nohup
si lo desea.
nohup php -q /path-to-script/file.php & salida
ejecutará el archivo PHP y cerrar la consola sin necesidad de terminar el proceso.
- 1. Ejecutar script de python remoto a través de SSH
- 2. Cómo ejecutar comandos SSH a través de PHP
- 3. ¿Cómo ejecuto un script Perl desde un script Perl?
- 4. ¿Cómo ejecuto MinGW con un script?
- 5. ¿Cómo ejecuto un script bash en Terminal?
- 6. Cómo creo un crontab a través de un script
- 7. pasando variables a través de ssh
- 8. Accediendo a la clave SSH desde el script bash ejecutándose a través de un trabajo cron
- 9. paquete no encontrado a través de ssh
- 10. ¿Cómo ejecuto un script de Python en mi servidor web?
- 11. Ejecutar script de Bash almacenada en un archivo a través de SSH
- 12. Conectarse a un servidor MySQL a través de SSH en PHP
- 13. ¿Cómo ejecuto mi archivo de script .sql a través de ADO.NET?
- 14. ¿Cómo puedo ejecutar comandos remotos en PHP a través de ssh?
- 15. ¿Cómo ejecuto un editor desde un script de shell?
- 16. Ejecutando comandos de script después de SSH
- 17. Cómo ejecuto un script de shell PHP como acción de Automator en Mac OS X
- 18. ¿Cómo paso los parámetros a un script PHP a través de una página web?
- 19. ¿Cómo ejecuto un script de shell como root (sudo)?
- 20. ¿Cómo ejecuto un script usando un archivo BAT?
- 21. Cómo conectarse a MySQL desde C# a través de SSH
- 22. No puedo recuperar a través de SSH
- 23. TortoiseSVN a través de un script proxy
- 24. Transfiriendo archivos a través de SSH
- 25. ¿Cómo ejecuto un script PHP usando la tarea de programación de Windows?
- 26. Transferir archivo a través de ssh
- 27. Instalación de Java en Linux a través de SSH
- 28. ssh a través de shell emacs?
- 29. ¿Cómo mantener un script PHP persistente en ejecución?
- 30. ¿Cómo puedo ssh dentro de un script de Perl?
Y cualquier redirección necesaria. – strager