Hola.
Se me ocurre que quizás deberías poner la ruta completa de donde se encuentra firefox:
/usr/bin/firefox
Saludos
Hola
He instalado PHP7 e intento lanzar el servicio servidor PHP y lanzar index.php directamente a firefox. Pero lanzo bien el servicio servidor PHP pero no consigo que funcione bien la carga de firefox. Esto es lo que hago. Por favor me dicen que hago mal.
Creo un archivo "sh" le llamo miservidor.sh y en su interior pongo:
cd /home/miusuario/Documentos/www
php -S localhost:4660
firefox localhost:4660/index.php
Lo guardo en /home/miusuario/Documentos/www y lo ejecuto con el este comando en el terminal como administrador root
>sh miservidor.sh
Y que ocurre despues, pues, ejecuta bien el servicio servidor PHP en el terminal pero no lanza firefox. Y cuando al servicio servidor PHP escribo Ctrl+c (cerrar el servicio) entonces lanza firefox pero como no hay servicio pues pone error de página.
¿Que hago mal?
Gracias.
Hola.
Se me ocurre que quizás deberías poner la ruta completa de donde se encuentra firefox:
/usr/bin/firefox
Saludos
→ Guía básica de openSUSE Leap para recién llegados a GNU/Linux.
→ Mi blog sobre openSUSE, GNU/Linux, software libre ...y de todo un poco: Victorhck in the free world
→ Me puedes seguir en: Mastodon - diaspora* - PixelFed
Hola victorhck
En realidad es igual pero he cambiado la linea como me dices y sigue exactamente igual.
Quiero que sepas aunque ya lo he contado antes que:
1. Funciona bien el servidor PHP
2. Funciona bien la linea que llama a firefox e incluso la carga de la pagina index.php
Pero, y este es el problema lo hace en un orden que para mi no me vale.
1. Carga el servidor PHP y lo hace bien en el momento correcto.
2. Despues me quedo como un tonto esperando que cargue la pagina web y que ejecute firefox. Y como no ocurre nada despues de la carga del servidor PHP
3. Cierro el servidor desde el terminal y justo tras esta acción es cuando ejecuta firefox con cualquiera de las dos lineas, la mia o la tuya pero como ya no funciona el servidor por que yo mismo lo he cerrado pues dice firefox error de la pagina y se refiere a index.php.
Esto con perdon lo hago exactamente igual en Windows y si funciona. Y no es una critica es un hecho ya que lo hago tambien en Windows. No pensemos nada malo.
Nota final: Cuando cierro el servidor PHP con Ctrl + C despues me sale esta linea:
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
Última edición por andy98; 14-jun-2019 a las 14:07
si no se ejecuta firefox y se queda como "esperando" quiere decir que te falta un "&" al final de la linea:
php -S localhost:4660 &
así seguirá ejecutando la siguiente linea.
Saludos.
__________________________________________________
Mi Blog:
http://elblogdedarkspark.blogspot.mx/
Canales de Youtube:
http://www.youtube.com/user/DarkSpark2099
http://www.youtube.com/user/defton En des-uso
Por lo que comentas, me da la impresión de que hay que esperar a que finalice el proceso PHP para que continúe leyendo la siguiente linea (Firefox).
Si es así, puedes solucionarlo abriendo el PHP en otra consola independiente, o bien ejecutando utilizando condicionantes || , &
Ejemplo:
php -S localhost:4660 & sleep 10 || firefox localhost:4660/index.php
En ese ejemplo va a ejecutar el PHP, luego va a esperar 10 segundos para continuar ejecutando el Firefox.
Saludos.
Gracias a todos, sois los mejores.
Os voy a dar la solución después de quemar a la parrilla mis neuronas así como un enlace que me ha dado la luz.
Enlace que me ha guiado: http://www.nexolinux.com/ejecutar-co...-otro-usuario/
Después de esto he resuelto así:
1. En la Consola como root (administrador) Ejecuto mi script así:
>su miusuario -c '/home/miusuario/Documentos/www/miservidor.sh'
Si lo hacen así exactamente se produce una ejecución limpia y rápida así como perfecta.
El error que enviaba al final era por que queríamos hacer algo ilegal y de esta forma lo hacemos como dios manda.
Espero que le sirva a mas usuarios. Yo no lo puedo explicar con profundidad por que todavía me queda muchísimo por aprender de Linux.
Una nota que quiero añadir a la receta:
He comprobado que cuando lo hago así la primera vez no funciona firefox y el servidor ocupa el puerto que le asignemos. Y la segunda vez funciona perfecto pero esta vez el usuario root crea un puerto aleatorio y lo asigna al puerto que nosotros le hemos indicado. Por lo que veo firefox funciona con el puerto que nosotro le hemos dicho pero en realidad lo que hace es reembiarlo al puerto asignado por el root.
Y os voy a dar mas datos sobre este último punto por si a alguien le preocupa despues de usar el servidor PHP como dejar de escuchar el puerto que esta redireccionado por vuestro root.
Para ver la aplicación que a tomado el puerto, ya deberian conocerla pues la habeis lanzado ustedes mismo pero por si acaso poner esto:
lsof -i:4660 (Esto no se escribe: esto te dirá el programa que ocupa el nº de puerto que has añadido a i:4660 y te devuelve en este caso = php)
Y para dejar de escuchar el puerto sin salir de tu usuario ni cerrar sesión ni apagar ni reiniciar pon: (Con esto liberas los puertos abiertos a mano, y aumenta la seguridad de tu sistema despues de haberlos usado)
killall php
Última edición por andy98; 14-jun-2019 a las 21:20
Lo resolví perfectamente bien y sin problemas de ningún tipo esta es la solución sin usuario root y directamente desde el usuario que uses:
En primer lugar debemos escribir el script y ejecutarlo desde el terminal sin administrador ponemos:
>sh miservidor.sh
En el interior de miservidor.sh
cd rutaa_index.php
php -S localhost:4660 & firefox localhost:4660/index.php
Y con esto ya funciona perfecto sin más líos.
Última edición por andy98; 15-jun-2019 a las 21:05
There are currently 1 users browsing this thread. (0 members and 1 guests)
Marcadores