Tengo un proyecto Vue.js y un proyecto Laravel en apache.
Puse Vue.js en C:/Apache24/htdocs/vue_project_name , puse Laravel en C:/Apache24/htdocs/laravel_project_name , así puedo obtener la configuración de la siguiente manera:
Virtualhost DocumentRoot: "C:/Apache24/htdocs/". Frontend URL: "http://domain_name/vue_project_name" Backend URL: "http://domain_name/laravel_project_name" Backend API URL: "http://domain_name/laravel_project_name/public/api" Quiero volver a escribir la URL cuando ingreso http://domain_name , el navegador lo dirigirá a http://domain_name/laravel_project_name . E ingreso http://domain_name/api , el navegador lo dirigirá a http://domain_name/laravel_project_name/public/api .
Por ejemplo, tengo una API, puedo llamar a http://domain_name/laravel_project_name/public/api/login para obtener el recurso, pero quiero que se simplifique a http://domain_name/api/login para obtener el recurso.
¿Como hacer eso?
Es mi httpd-vhosts.conf:
<VirtualHost *:80> DocumentRoot "C:\Apache24\htdocs" ServerName domain_name ErrorLog "C:\Apache24\logs\error.log" CustomLog "C:\Apache24\logs\access.log" combined <Directory "C:\Apache24\htdocs"> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> </VirtualHost> Sé cómo hacerlo cuando ingreso http://domain_name , Apache se dirigirá a http://domain_name/laravel_project_name , parece como:
<VirtualHost *:80> DocumentRoot "C:\Apache24\htdocs\vue_project_name" ServerName domain_name ErrorLog "C:\Apache24\logs\error.log" CustomLog "C:\Apache24\logs\access.log" combined <Directory "C:\Apache24\htdocs\vue_project_name"> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> </VirtualHost>Pero creo que afectará la ruta de back-end, por lo que necesito una mejor solución.
Gracias.
Laravel tiene que apuntar a <project_root>/public , ese es tu problema...
Actualice la configuración relacionada con laravel para que sea DocumentRoot: "C:/Apache24/htdocs/laravel_project_name/public" .
Sé que está usando Apache, pero vea cómo la configuración de Nginx apunta a esa carpeta.