Tengo un problema, estoy cargando la raíz del proyecto tanto en local como en un servidor web y solo me carga la lista de ficheros y carp...

Christian Aqueveque

Christian Aqueveque

Pregunta
studenthace 4 años

Tengo un problema, estoy cargando la raíz del proyecto tanto en local como en un servidor web y solo me carga la lista de ficheros y carpetas que están dentro del proyecto.

Si ingresan a esta url se ve claramente https://frameworks.navdigital.cl/

Ingresé a la carpeta public que es donde se encuentra el archivo index y me carga este error que entiendo es porque al poner public en la raíz entiende que PublicController no existe

Según entiendo al cargar la raíz del proyecto debiese cargar el sitio directamente pero me pregunto ¿cómo sabe el proyecto que el archivo que debe cargar está en public?

6 respuestas
para escribir tu comentario
    Carlos Eduardo Gomez García

    Carlos Eduardo Gomez García

    teacherhace 4 años

    Ufff, la verdad es que cuando usaba Mac no pude con Mamp y acabé haciendo una cosa rara con Homebrew jaja, pero suerte! Solo necesitas encontrar la forma de habilitar los virtual hosts!

    Christian Aqueveque

    Christian Aqueveque

    studenthace 4 años

    @RetaxMaster Vale entiendo, al final era entender cual era el problema para buscar solucionarlo. En el hosting ya encontré como pero en local me tocará buscar Virtual Hosts porque estoy en Mac usando Mamp. Te agradezco mucho la ayuda.

    Carlos Eduardo Gomez García

    Carlos Eduardo Gomez García

    teacherhace 4 años

    Pues eso depende de en donde estés hosteando, si es un hosting compartido entonces en CPanel debe haber una opción para cambiar la carpeta a la que apunta tu dominio.

    Si es un servidor VPS y estás trabajando con Apache debes modificar los

    site-enabled
    y ahí dentro configurar cuál es la carpeta a la que apuntará tu dominio.

    En local, dependiendo de si estás en Windows con Xampp o Linux con apache, necesitas configurar los Virtual Hosts (te tocaría investigar sobre Virtual Hosts)

    La verdad es que es un proceso un poco complejo de explicar en un solo comentario jaja 😅

    Por ejemplo, este artículo explica cómo hacerlo con apache instalado en Linux, pero en resumen tienes que meterte a los archivos de configuración de apache para cambiar la carpeta a la que va a apuntar tu virtual host:

    https://www.digitalocean.com/community/tutorials/how-to-set-up-apache-virtual-hosts-on-ubuntu-18-04-es

    Te repito, es algo complicado, pero puedes investigar "como apuntar a la carpeta public de Laravel en un servidor" o cosas así, seguro hay información en internet 🤔 Los pasos pueden variar dependiendo de en qué entorno tengas corriendo tu aplicación

    Christian Aqueveque

    Christian Aqueveque

    studenthace 4 años

    @RetaxMaster gracias nuevamente por tu respuesta, la verdad no se como apuntar el proyecto a public, ni en local ni en el servidor. ¿Conoces algún artículo que lo explique? Lo otro te había hablado justo por Twitter para saber si me podías ayudar con esto 😅

    Carlos Eduardo Gomez García

    Carlos Eduardo Gomez García

    teacherhace 4 años

    ¡Hola!, es porque no siempre es así, es decir, no siempre se va a cargar la raíz del proyecto, lo que se tiene que cargar es la carpeta

    public
    porque ahí está tu
    index.html
    .

    Sería realmente malo si cargaras directamente la raíz del proyecto porque entonces cualquier persona podría ver tu código entrando a tus carpetas (por eso es que siempre se carga

    public
    )

    NO tienes que entrar a

    public
    , tienes que hacer que tu servidor apunte directamente a la carpeta
    public
    , es decir, la carpeta
    public
    debe ser la raíz de tu dominio, es decir, tu URL "https://frameworks.navdigital.cl/" debe cargar como carpeta raíz a la carpeta
    public
    NO a la carpeta de tu proyecto entero.

    Es una práctica de seguridad, ya que si tu dominio toma como carpeta raíz a

    public
    entonces tu dominio no podrá ver qué hay antes de esa carpeta, por lo que nungún usuario podrá acceder a ellas :D

Curso de Introducción a Frameworks de PHP

Curso de Introducción a Frameworks de PHP

Construye aplicaciones web profesionales con PHP utilizando frameworks como Laravel y Symfony. Aprende a manejar estructuras, peticiones, controladores y vistas para optimizar tu desarrollo. Ideal para quien ya programa en PHP.

Curso de Introducción a Frameworks de PHP
Curso de Introducción a Frameworks de PHP

Curso de Introducción a Frameworks de PHP

Construye aplicaciones web profesionales con PHP utilizando frameworks como Laravel y Symfony. Aprende a manejar estructuras, peticiones, controladores y vistas para optimizar tu desarrollo. Ideal para quien ya programa en PHP.