【问题标题】:Why not working the / correctly with .htaccess in php?为什么不能在 php 中使用 .htaccess 正确工作 /?
【发布时间】:2017-03-10 09:38:39
【问题描述】:

我写了这个 htaccess 文件:

RewriteEngine On
RewriteBase /project/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?uri=$1 [QSA,L]

我使用 xampp 和我的菜单结构,例如:Home(/) 和 Contact(/contact),并且 localhost/project/ 正在工作,我得到了主页,但是当我转到 localhost/project/contact 时,联系页面没问题,但主菜单点 url 将是 localhost 而不是 localhost/project/。我认为是因为 xampp 域或因为我的项目在 xampp/htdocs/project 或类似的东西下......有人可以帮我解决这个问题吗?非常感谢!

html:

<a href="/">HOME</a>
<a href="contact">Contact</a>

【问题讨论】:

  • 你需要展示一些代码。 问题“为什么这段代码不起作用?”必须包含在问题本身中重现它所需的最短代码。

标签: php apache .htaccess


【解决方案1】:

如果您有&lt;a href="/"&gt;Home&lt;/a&gt;,这将是因为您在 HTML 中设置了链接,然后它将转到 localhost/,因为它不会从您的 htaccess 中读取。您需要将您的 href 更新为 /project/home,或者您需要将重定向规则添加到您的 htaccess 并将根目录重定向到 /project/ 这将解决您的问题。

编辑:您的联系人正在工作,因为您的开头没有正斜杠,这使其成为相对链接。如果您在联系之前放置了正斜杠,那么它将转到localhost/contact,建议使用绝对路径(开头的正斜杠)并像&lt;a href="/project/contact"&gt;Contact&lt;/a&gt;&lt;a href="/project"&gt;Home&lt;/a&gt;一样链接到它

【讨论】:

  • 感谢您的帮助,我知道这样的事情。现在我在 xampp/htdocs 中创建一个规则,将所有内容重定向到 project/ :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-10-02
  • 1970-01-01
  • 2019-10-09
相关资源
最近更新 更多