Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php MVC URI路由在重定向时会导致地址栏上的重复链接_Php_.htaccess - Fatal编程技术网

Php MVC URI路由在重定向时会导致地址栏上的重复链接

Php MVC URI路由在重定向时会导致地址栏上的重复链接,php,.htaccess,Php,.htaccess,我的URL路由器有问题。当在地址栏上手动键入URL时,路由器工作正常,如 http://localhost/mysite/home/index 我正在使用这个.htaccess文件 Options -MultiViews -Indexes RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.+)$ index.php?url=$1 [QSA

我的URL路由器有问题。当在地址栏上手动键入URL时,路由器工作正常,如

http://localhost/mysite/home/index
我正在使用这个.htaccess文件

Options -MultiViews -Indexes
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]
它将所有请求重定向到根目录中的index.php

使用URL:

 http://localhost/mysite/home/index
它调用生成视图的控制器,在视图中我有到主页的链接

<a href='http://localhost/mysite/home/index/' alt='test'>HOME</a>

它正确地重定向,但它会导致如上所示的重复URL,我不知道如何解决它。我点击的次数越多,添加的URL就越多。

更重要的是如何为该锚创建URL。如果单击anchor,您将获得参数full path
localhost/mysite/home/index
。如果你为你的网站创建一个虚拟主机可能会更好。

一般来说,你不需要你的内部应用程序链接来包含你的域名(这里
http://localhost
)。如果省略此项,则应用程序中的所有链接/表单都将与您的域相关

因此,此URL在
中:

可以更清晰地表示为:

/mysite/home/index
这意味着您的应用程序将在您连接到的任何域和任何协议(
https
以及
http
)上运行

唯一需要显式引用域的时间是:

  • 使用
    标题('Location:')重定向时
  • 当您引用的域不是当前域时
  • 当您希望切换协议时

这有助于解决问题。我用标记指定路径,然后我可以在链接中放置类似的内容。非常感谢你
http://localhost/mysite/home/index
/mysite/home/index