php - Laravel 页面重定向问题
问题描述
嗨,我是 laravel 初学者,在页面导航过程中遇到问题。
http://localhost/mylaravel/public/index
在索引页面中,我有几个项目和下面的 href 以根据项目 id 查看该项目的详细信息。*
<a href="{{route('singleitem',$product->id}}">
Route::get('/single/{id}', 'ProductController@single')->name('singleitem');
Route::get('/index', 'ProductController@index');
现在,当我单击项目详细信息时,我得到以下 URL,这没问题。
http://localhost/mylaravel/public/single/25T8C (here id = 25T8C)
现在,当我单击主页时,从该页面添加单个 [single/index !!!] 的索引页面结尾
<a href="index" class="nav-link">Home</a>
http://localhost/laravel-test/mylaravel/public/single/index
我试图添加一个斜杠,但它已将我重定向到
<a href="/index" class="nav-link">Home</a>
http://localhost/index
这是我的 .htaccess
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews -Indexes
</IfModule>
RewriteEngine On
# 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]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
任何帮助将不胜感激。
解决方案
在现场只需要通过 /index
<a href="/index" class="nav-link">Home</a>
它会将您重定向到
http://yourdomain.com/index
但是在本地主机上,您还必须添加目录名称(注意:在现场将没有文件夹名称。因此/index将在那里工作)。
<a href="/laravel-test/index" class="nav-link">Home</a>
或者,您必须通过 artisan 服务器运行 laravel,然后 /index 也将在您的 localhost 上运行。
您正面临这个问题,因为当我们在 URL 之前给出/时,它会将给定的 URL 与主机连接起来,而在 XAMPP 上,我们必须在 localhost 之后连接文件夹名称。
推荐阅读
- javascript - HTML没有进入节点js puppeteer
- android - 如果在片段 onCreate 之前 supportActionBar 为空,则不会调用 onCreateOptionsMenu
- r - 是否可以使用 gganimate 随时间推移更改颜色背景?
- prometheus - 如何从普罗米修斯查询中过滤掉匹配结果
- vscode-settings - 如何在 vscode task.json 中设置命令参数?
- javascript - react-hooks-form 中受控组件和非受控组件之间的主要区别是什么?
- ios - 在不使用 PushKit 和 CallKit 的情况下通知用户来电,因为它在中国已停用,我不想排除中国 Appstore
- c# - 如何使用 C# 从句子中删除字符 <>?
- docker - 本地卷安装上的 rbind 用法
- hive - 按部门分组需要 sum(sales) 并为 hive 中的整个表创建带有 sum(sales) 的单独列?