我有一个Vue.js项目和一个Laravel项目在Apache中。
我把Vue.js放在C:/Apache24/htdocs/vue_project_name,把Laravel放在C:/Apache24/htdocs/laravel_project_name,所以我可以得到以下配置:
虚拟主机文档根目录:"C:/Apache24/htdocs/"。 前端URL:"http://domain_name/vue_project_name" 后端URL:"http://domain_name/laravel_project_name" 后端API URL:"http://domain_name/laravel_project_name/public/api"
我想在输入http://domain_name时重写URL,浏览器将直接跳转到http://domain_name/laravel_project_name。当我输入http://domain_name/api时,浏览器将直接跳转到http://domain_name/laravel_project_name/public/api。
例如,我有一个API,我可以调用http://domain_name/laravel_project_name/public/api/login来获取资源,但我希望简化为http://domain_name/api/login来获取资源。
如何实现这个功能?
这是我的httpd-vhosts.conf文件:
DocumentRoot "C:\Apache24\htdocs" ServerName domain_name ErrorLog "C:\Apache24\logs\error.log" CustomLog "C:\Apache24\logs\access.log" combined Options Indexes FollowSymLinks AllowOverride All Require all granted
我知道当我输入http://domain_name时,Apache会直接跳转到http://domain_name/laravel_project_name,像这样:
DocumentRoot "C:\Apache24\htdocs\vue_project_name" ServerName domain_name ErrorLog "C:\Apache24\logs\error.log" CustomLog "C:\Apache24\logs\access.log" combined Options Indexes FollowSymLinks AllowOverride All Require all granted
但我认为这会影响后端路径,所以我需要一个更好的解决方案。
谢谢。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
Laravel必须指向
<project_root>/public,这是你的问题...更新与Laravel相关的配置为
DocumentRoot: "C:/Apache24/htdocs/laravel_project_name/public"。我知道你正在使用Apache,但是看看如何将
Nginx配置指向那个文件夹。