You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel 10+Breeze项目URL域名重复问题求助

解决Laravel 10 + Apache别名导致的URL重复问题

针对你遇到的访问http://localhost/bcl自动跳转到http://localhost/bcl/bcl的问题,以下是几个合理且不修改vendor文件的解决方案:

1. 调整public目录下的.htaccess文件

Laravel默认的.htaccess未适配Apache别名场景,需添加RewriteBase指定别名路径:

修改D:/projects/bcl/public/.htaccess,在RewriteEngine On后添加RewriteBase /bcl/:

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews -Indexes
    </IfModule>

    RewriteEngine On
    RewriteBase /bcl/

    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} (.+)/$
    RewriteRule ^ %1 [L,R=301]

    # Send Requests To Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

2. 正确配置APP_URL并清除缓存

  • 在.env文件中设置:
    APP_URL=http://localhost/bcl
    
  • 执行以下命令清除Laravel配置缓存:
    php artisan config:clear
    php artisan cache:clear
    

3. 确保Apache mod_rewrite模块已启用

打开Apache的httpd.conf配置文件,取消注释以下行(若未启用):

LoadModule rewrite_module modules/mod_rewrite.so

4. 重启Apache服务

完成以上修改后,重启Apache服务器使配置生效。

这些改动均为项目内的合理配置调整,不会依赖vendor目录的修改,且能长期生效。

内容的提问来源于stack exchange,提问作者Neha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 03:52:39