1

This is my Navbar code:

    <li class="nav-item"><a class="nav-link active" href="pages/about.php">about</a></li>
    <li class="nav-item"><a class="nav-link active" href="pages/foreword.php">Foreword</a></li>
    <li class="nav-item"><a class="nav-link active" href="pages/preface.php">Preface</a></li>
    <li class="nav-item"><a class="nav-link active" href="pages/vission.php">Vision</a></li>

My pages are available inside the pages folder. When I press about on navbar, it navigates to:

localhost/pages/about.php

When I press foreword on navbar, it navigates to:

localhost/pages/pages/foreword.php

I am confused why it happens localhost/pages/pages/.

Blue
  • 22,608
  • 7
  • 62
  • 92
Robinson
  • 21
  • 4

1 Answers1

5

If you are currently in the pages folder, then "pages/foreward.php" refers to "pages/pages/foreward.php".

Regardless of your location, you can force navigation to start at at the root of the website by prepending each of your links with a / like so:

<li class="nav-item"><a class="nav-link active" href="/pages/about.php">about</a></li>
<li class="nav-item"><a class="nav-link active" href="/pages/foreword.php">Foreword</a></li>
<li class="nav-item"><a class="nav-link active" href="/pages/preface.php">Preface</a></li>
<li class="nav-item"><a class="nav-link active" href="/pages/vission.php">Vision</a></li>

For more information about this, I suggest reading this post on relative vs absolute paths.

Blue
  • 22,608
  • 7
  • 62
  • 92