Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

1.1K
Vistas
Cómo cambiar el directorio público al directorio public_html para Laravel Mix

Estoy usando Laravel 8 y quería instalar Sweet Alert. Entonces, después de descargarlo y agregar require('sweetalert'); a bootstrap.js , ejecuté el comando npm run production .

Luego he incluido esto en mi master.blade.php :

 <script src="{{ asset('/js/app.js') }}"></script> @include('sweet::alert')

Ahora, debido a que había cambiado mi directorio público de public a public_html , la función Laravel asset() llamaría a public_html/js/app.js y esto es incorrecto porque Laravel Mix generó app.js y app.css en el directorio public .

Entonces, la pregunta es ¿cómo puedo cambiar la generación predeterminada de Laravel Mix que es public a public_html ?

Aquí está mi AppServiceProvider.php :

 public function register() { $this->app->bind('path.public', function(){ return base_path() . '/public_html'; }); }
over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

@Alfian ha respondido a su pregunta. Pero la solución que solicitó no se recomienda cuando habla de cambiar el nombre de la carpeta pública . Realmente no debería cambiar el nombre de su carpeta pública mientras usa Laravel.

Pero puedo entender por qué le cambió el nombre, para declarar la carpeta raíz predeterminada. Pero hay mejores soluciones en lugar de cambiarle el nombre. Y entonces tampoco habrá tal pregunta.

La mejor solución: cargue el proyecto Laravel tal como está en la carpeta public_html . Vaya a su cPanel e ingrese la sección Domains/Addon Domains/Subdomains (qué tipo de dominio está usando) y simplemente cambie la raíz del documento como /public_html/public . Estás listo.

Actualizar:

Si es un dominio principal o un dominio adicional, es posible que no haya una opción directamente para cambiar la raíz del documento. Entonces podemos simplemente agregar una regla en el archivo .htaccess. Utilizar esta:

 RewriteEngine on RewriteCond %{REQUEST_URI} !^public RewriteRule ^(.*)$ public/$1 [L]
over 4 years ago · Santiago Trujillo Denunciar

0

Puede cambiar el directorio de activos compilados de configuración en los archivos de configuración del paquete web, de forma predeterminada, laravel establece el paquete web en webpack.config.js

Aquí más documentación sobre la compilación de activos laravel

Laravel 8 Compilando Activos

over 4 years ago · Santiago Trujillo Denunciar

0

En .env cambie ASSET_URL=https://yourdomain.com/public_html . Pero es una mala práctica tener un índice junto con el código php (aplicación, proveedor, etc.)

Puede crear un enlace simbólico desde el público para que actúe como html público como sigue

ln -s /full/work/path/laravel-project/public /full/work/path/public_html

Pero es posible que primero deba eliminar public_html

mv public_html tmp

Supongo que su estructura sería

 full/work/path/ - laravel-project - public - public_html ...
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda