Soy nuevo en el uso de Laravel y Homestead, y agradecería cualquier ayuda o un punto en la dirección correcta. He podido acceder con éxito a la pantalla "Has llegado" cuando ejecuto "php artisan serve", pero cuando intento hacer lo mismo a través de Vagrant, obtengo "ningún archivo de entrada especificado". Mi archivo Homestead.yaml se ve así:
authorize: /Users/me/.ssh/id_rsa.pub
keys:
- /Users/me/.ssh/id_rsa
folders:
- map: /Users/me/code/exampleproject
to: /home/vagrant/code/exampleproject
sites:
- map: exampleproject.app
to: /home/vagrant/code/exampleproject/public
variables:
- key: APP_ENV
value: local
En mi computadora tengo los siguientes directorios:
/Users/me/code/Homestead
/Users/me/code/exampleproject //this is the directory created with composer
En mi Vagrant Box tengo, por alguna razón, dos directorios llamados "código" y "Código":
/home/vagrant/code/exampleproject
/home/vagrant/Code
He comprobado y puedo ver los cambios realizados en mi computadora, los archivos de proyectos de ejemplo se reflejan en los archivos de vagrant box.
¡No estoy seguro de cómo resolver esto! Realmente agradecería cualquier ayuda posible :)
vagrant up --provision
no funcionó para mí, perohomestead up --provision
sívagrant reload --proivision
.Tuve exactamente el mismo problema y encontré la solución mediante el uso de larachat.
A continuación, le indicamos cómo solucionarlo: debe tener la configuración del archivo homestead.yaml correcta. Si desea saber cómo se hace, siga el tutorial de Jeffery Way sobre homestead 2.0 https://laracasts.com/lessons/say-hello-to-laravel-homestead-two .
Ahora, para solucionar el
Input not specified
problema, debe ingresar al cuadro de homestead y escribirserve domain.app /home/vagrant/Code/path/to/public/directory
esto generará un script de servicio para nginx. Deberá hacer esto cada vez que cambie de proyecto.También habló sobre lo que expliqué en esta serie https://laracasts.com/series/laravel-5-fundamentals/
fuente
serve
automáticamente para todos?Esto es fácil de solucionar, porque ha cambiado el nombre de la carpeta a: exampleproject
Entonces SSH a tu vagabundo:
Luego cambia tu configuración de nginx:
sudo vi /etc/nginx/sites-enabled/homestead.app
Edite el URI correcto a la raíz en la línea 3 a este con el nuevo nombre de carpeta :
Reiniciar Nginx
Vuelva a cargar el navegador web, debería funcionar ahora
fuente
Para mí funcionó lo siguiente:
vagrant reload --provision
fuente
Homestead.yaml
archivo. Por ejemplo, estaba mapeando/phpmyadmin
cuando mi nombre de directorio era en realidadphpMyAdmin
.Dando mi respuesta en caso de que alguien tenga problemas con este problema.
Es posible que deba verificar que la configuración server.root en "/ etc / ngnx / sites-available / domain" coincida con su configuración sites.to en "Homestead.yaml".
Si no coincide, cámbielo y reinicie el servidor web con "sudo service nginx restart"
Y todavía las cosas no funcionan, entonces permita el permiso de escritura para la carpeta "YOURSITE / app / storage" como "chmod -R 777 app / storage"
fuente
También tuve el mismo problema, había asumido que Laravel está instalado "fuera de la caja" pero parece que no lo está. Me conecté con SSH a la máquina y ejecuté estos comandos:
Y todo marchaba como de costumbre.
fuente
Este problema me ocurrió después de editar Homestead.yaml. Resolví este problema al
fuente
Tuve los mismos problemas
Pero olvidé que las especificaciones decían que el archivo de configuración estaría ubicado en
~ / .homestead / Homestead.yaml y estaba actualizando ~ / Homestead / src / stubs / Homestead.yaml
Entonces, el FIX fue actualizar Homestead.yaml ubicado aquí en
~ / .homestead / Homestead.yaml
antes de
sites: - map: homestead.app to: /home/vagrant/Laravel/public
Después
sites: - map: homestead.app to: /home/vagrant/Code/mysitename/public
Entonces corrí
vagrant up --provision
Espero que esto funcione para cualquier otra persona.
fuente
Después de cambiar el nombre de algunos directorios, tuve que destruir y volver a ejecutar vagrant. Ninguna de las soluciones aquí funcionó.
Esto funcionó para mí:
fuente
Reinicie su hogar. Trabajó para mi.
fuente
Tuve el mismo problema mientras seguía los documentos de Laravel ( https://laravel.com/docs/5.2/homestead )
Mi problema era muy simple, me perdí leer esta parte en los documentos:
Así que estaba actualizando el archivo Homestead.yaml incorrecto, ya que el archivo se movió cuando ejecuté el comando bash init.sh.
Solo me di cuenta de esto después de muchas búsquedas, así que espero que esto ayude a alguien.
fuente
Solo estaba luchando con la misma situación. A continuación se resolvió el problema:
Si tiene una estructura de directorio como esta:
Simplemente cree una carpeta 'pública' dentro de exampleproject en su máquina host.
fuente
Estoy usando Windows 10 y tengo la siguiente configuración de Homestead
Hice ping al dominio homestead.local y estaba obteniendo resultados.
Pero cuando escribí http: //homestead.local en el navegador, obtuve el error 'no se especifica el archivo de entrada'
Revisé el código / carpeta pública y no había ningún archivo de índice. Estaba seguro de que el sistema estaba buscando el archivo predeterminado que de alguna manera faltaba.
Una vez que creé un archivo de índice, comenzó a funcionar bien.
Actualizar:
La próxima vez que sucedió después de un cambio en el archivo Homestead.yaml , ejecuté el
vagrant reload --provision
comando y funcionó.Parece que correr
vagrant reload
solo no abastecerá la caja vagabunda. Leer aquífuente
Una advertencia, linux distingue entre mayúsculas y minúsculas. Probablemente por eso ve un directorio "Código" y un "código".
Lo que haría es rehacer la configuración del vagabundo nuevamente y si desea mantenerlo simple y que coincida con lo que el cuadro de Homestead tiene por defecto, haga su directorio en su máquina host "Código" con mayúsculas.
También puede en la sección "carpetas" simplemente mapear la carpeta "Código" en su máquina, en caso de que decida agregar más sitios a su configuración de Homestead más adelante. De esa manera, en / home / vagrant / Code / verá todos los proyectos de su sitio y podrá ver más sitios apuntando a sus directorios "públicos".
fuente
Es probable que esto se deba a que el servidor web nginx no apunta a la ruta correcta.
Hay dos claves que debe mirar: la
map
clave debajofolders
y lato
clave debajosites
. Lafolders
clave asigna carpetas en su máquina local a la máquina virtual vagabunda. Lasites
clave se usa para crear un host virtual en nginx con el valor ento
.Lo que quiere asegurarse es que
to
bajosites
apunta al camino correcto haciapublic
.El problema fue que creé mi proyecto laravel con
composer create laravel/laravel
. Esto creó una carpeta en mi directorio actual llamadalaravel
. Luego, sin cambiar de directorio, instalé el asistente de homestead concomposer require laravel/homestead --dev
.Después de ejecutar
php vendor/bin/homestead make
yvagrant up
mi estructura de directorio se veía así:Mi Homestead.yml se veía así:
Si miras de cerca, la
/Users/USER/Sites/sandbox/php/laravel51
ruta se montará en la VM vagabunda. Este es el directorio incorrecto porque debería apuntar a la raíz del proyecto laravel donde está el directorio de tu aplicación. Lo que sucedió aquí fue que se suponía que debía requerir el ayudante de la granja mientras estaba en la raíz del proyecto .Entonces ahora la pregunta es ¿qué hago? Tiene dos opciones: deshacerse de su VM actual de homestead y comenzar de nuevo, pero esta vez desde la raíz del proyecto O rescatar lo que ya tiene.
Si desea salvar lo que tiene, tendrá que mover varios archivos y una carpeta a la raíz de su proyecto laravel.
Estos son los artefactos que necesitará mover:
El
composer.json
no será necesario ya que va a lo requieran más tarde.Mueva esos archivos a la raíz de su proyecto laravel y cambie su directorio de trabajo actual allí (
cd laravel
). En ese punto, simplemente actualice elmap
debajofolders
y asegúrese de que apunte a la raíz del proyecto. También asegúrese de que lato
clave de abajosites
sea lato
clave de abajofolders
con la que se/public
adjunta.Por ejemplo:
Ahora ejecútelo
composer require laravel/homestead --dev
para que se requiera el asistente de homestead en el archivo composer.json de su proyecto actual y se instale.Corre
vagrant reload --provision
y deberías estar listo.fuente
Esto suele suceder cuando edita el archivo Homestead.yaml .
¡Si como yo lo intentaste
homestead up --provision
y no funcionaste! luego prueba esto (funciona para mí):homestead destroy
homestead up
fuente
Las versiones anteriores de Homestead mapean carpetas
~/Code
para decir, por ejemplo, de forma predeterminada~/Code/laravel/public
. Observe las mayúsculas del caso en~/Code
. Son sensibles a mayúsculas y minúsculas. Las nuevas versiones usan minúsculas~/code
. Actualice estos directorios en su deHomestead.yaml
acuerdo con sus directorios reales.TL; DR;
Actualización
~/Code
a~/code
o viceversa dependiendo de sus nombres de directorio reales.fuente
El mismo problema para mí.
Ninguno de los dos
vagrant provision
ohomestead up --provision
trabajó para mí, pero el siguiente lo hizo - probablemente como propiedad ya estaba funcionando cuando he modificado el archivo ymlvagrant reload --provision
fuente
En Laravel 5 tuve que ssh en mi servidor de homestead y ejecutar estos comandos:
fuente
Esta es mi solución:
Es un problema de ruta de archivo, por lo que a continuación se muestran las rutas de mis carpetas y sitios. Además, tuve que usar "destruir vagabundo" ya que el aprovisionamiento no funcionó.
fuente
Mi problema estaba en el archivo de configuración del dominio:
la carpeta pública de mi proyecto se creó en / home / vagrant / Code / demo / public
el archivo de configuración del dominio (para mí /etc/nginx/sites-available/demo.app) había configurado: "/ home / vagrant / Code / Laravel / public" en lugar de "/ home / vagrant / Code / demo / public ".
Ahora está funcionando perfecto.
fuente
He tenido problemas similares con Homestead y solo aprovisionar la caja funcionó para mí. Entonces deberías probar esto:
vagrant provision
fuente
vagrant provision
Los códigos relacionados no funcionaron para mí, después de perder un tiempo, reinicié todo el sistema. Ahora funciona... -,-"fuente
I editado
homestead.yaml
yhosts
de acuerdo con este tutorial laracast y homestead renovadas usandovagrant suspend
,vagrant halt
, etc. /vagrant up
; Lo intentévagrant provision
también, perono file specified
solo desaparecí después de reiniciar mi computadora (estoy en una PC con Windows 7) después de hacer todo lo anterior. Sin duda, es un error complicado y que requiere mucho tiempo.Así es
homestead.yaml
como se ve mi trabajo para dos proyectos de laravel:y aquí está mi
hosts
archivo:Tenga en cuenta que hay dos instalaciones separadas de laravel en
D:\Projects\ProjectOne
yD:\Projects\ProjectTwo
Luego accedo al primer proyecto escribiendo
projectone.app:8000
en el navegador yprojecttwo.app:8000
al segundo proyecto.PD: probé esto para Laravel 5.2 en Windows
fuente
Esto sucede porque necesita configurar su servidor nginx correctamente para poder servir su aplicación. Puede hacer esto siguiendo esta guía, comenzando en el tema Configurar Nginx y Web Root .
Después de configurar correctamente su enlace simbólico entre su / etc / nginx / sites-available y / etc / nginx / sites-enabled, debe asegurarse de que su variable raíz esté configurada en la ruta de la carpeta de su aplicación. Configure su raíz nginx desde
a
Además, debe colocar index.php antes de sus archivos html para que php se sirva antes que html. Cambia esto
a esto
Después de terminar su configuración, reinicie su servidor nginx con
Su solicitud debería ser entregada ahora.
fuente
Tuve tal problema. Revisé el archivo Homestead.yaml y todos los archivos y todas las configuraciones eran correctas. Mi problema se eliminó después de los siguientes pasos.
1-Si está en vagrant @ homestead: ~ $ línea de comando, escriba
exit
comando.2- Ahora debes estar dentro de la carpeta Homestead. ejecutar este comando
3- correr
vagrant ssh
Ahora, si escribe la dirección relacionada en su navegador, debería mostrar la página de Laravel.
fuente
Intenta reiniciar tu computadora
Tenía un Homestead funcionando localmente, que en algún momento se detuvo y obtendría el error "No se especificó el archivo de entrada". No pude rastrearlo.
Con un reinicio de la computadora, el error desapareció.
fuente
Si cambió el nombre de la carpeta que contiene su proyecto de Homestead, obtendrá este error. Visite su
Homestead.yaml
archivo y actualice cualquier referencia para apuntar a la carpeta renombrada, luego hagavagrant up
(etc.) nuevamentefuente
Si está usando una nueva versión de larval 7> = puede usar desde su directorio de inicio
vagrant provision
fuente