4 mejores formas de eliminar público de la URL.
Si usó algún otro truco para eliminar el público de la URL, como cambiar el nombre de server.php a index.php y cambiar a la ruta del archivo central. Claramente, no hagas eso. Entonces, ¿por qué Laravel no da la solución como esta porque no es una forma adecuada de hacerlo?
1) Eliminar public de URL usando htaccess en Laravel
Al agregar un archivo .htaccess a la raíz, puede acceder al sitio web sin público
<ifmodule mod_rewrite.c>
<ifmodule mod_negotiation.c>
Options -MultiViews
</ifmodule>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ ^$1 [N]
RewriteCond %{REQUEST_URI} (\.\w+$) [NC]
RewriteRule ^(.*)$ public/$1
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ server.php
</ifmodule>
2) Elimine el público creando un host virtual en su local
Estoy dando una demostración aquí para el sistema operativo Windows. Pero intentaré definir un paso para que cualquiera pueda seguirlo fácilmente. También puede buscar en google lo mismo para el sistema operativo en particular.
Paso 1: Vaya a C: \ Windows \ system32 \ drivers \ etc \ abra el archivo "hosts" en modo Administrador.
Paso 2: agregue el siguiente código. Aquí, le doy una demostración de la demostración del nombre de dominio projectname.local, puede especificar cualquiera que desee. Solo hazlo constante en cada lugar.
127.0.0.1 projectname.local
Paso 3: Ahora vaya a, C:\xampp\apache\conf\extra
para usuarios de xampp y para el usuario de wamp "C:\wamp\bin\apache\Apache2.4.4\conf\extra"
y abra el "httpd-vhosts.conf"
archivo. Ahora agregue el siguiente código en él.
Notas: Cambie la raíz del documento según su proyecto y también agregue el nombre de dominio que defina en el archivo "hosts".
<VirtualHost projectname.local>
ServerAdmin projectname.local
DocumentRoot "C:/xampp/htdocs/projectdir"
ServerName projectname.local
ErrorLog "logs/projectname.local.log"
CustomLog "logs/projectname.local.log" common
</VirtualHost>
Paso 4: Por último, pero el paso importante es reiniciar su Xampp o Wamp y acceder a la URL como http://projectname.local
y su Laravel responderá sin URL pública.
3) Eliminar el público ejecutando el comando en Laravel
Si está trabajando en local, entonces no necesita hacer nada, solo necesita ejecutar el siguiente comando desde su terminal o herramienta de línea de comando. Después de eso, puede acceder a su sitio web mediante la URL proporcionada por la línea de comando.
> php artisan serve
Si está dispuesto a ejecutar su proyecto en una IP particular, entonces necesita ejecutar el siguiente comando. Si está trabajando en LAN, entonces si desea permitir que otras personas accedan a su sitio web desde local, entonces solo necesita verificar su dirección IP usando la línea de comando ejecutando "ipconfig" después de ejecutar su dirección IP siguiendo el comando.
> php artisan serve --host=192.168.0.177
Si está dispuesto a ejecutar su proyecto en una IP particular con un puerto particular, entonces necesita el siguiente comando.
> php artisan serve --host=192.168.0.177 --port=77
4) Eliminar el público en el servidor alojado o en el panel de control
Después de completar el proyecto, debe alojar el proyecto en el servidor, luego solo debe configurar la raíz del documento en su dominio en la carpeta pública. Mira la siguiente captura de pantalla.
Según la captura de pantalla, si no tiene ninguna carpeta de proyecto en public_html, entonces solo necesita configurar la raíz de su documento como "public_html/public"
.
Referencia tomada de aquí