Назад | Перейти на главную страницу

Относительный URL-адрес относительно неправильного абсолютного URL-адреса в Интернете

Задний план

Я создаю сайт. Это файлы:

/index.php
/pic.jpg
/dir/index.php
/dir/pic.jpg

Как мы знаем, люди могут посещать мой сайт dir/index.php страница с разными URL-адресами:

1. site.com/dir
2. site.com/dir/ 
3. site.com/dir/index.php

У меня есть ссылка в /dir/index.php

<a target="_blank" href="pic.jpg">

на который я хочу связать относительную ссылку /dir/pic.jpg

Эта проблема

---------------------/-------------------------------                    
                             index.php
           pic.jpg
              ^
              |
        ------|-----/dir/------------------------
        |     |                                 |
        |     | 1                               |
        |     |                                 |
        |     |       2 or 3                    |
        | index.php ---------> pic.jpg          |
        -----------------------------------------
-----------------------------------------------------

В href="pic.jpg" приводит людей в разные места, когда люди заходят в Интернет по разным адресам.

Люди, использующие URL 1, получают /pic.jpg , а другие, использующие URL 2 или 3, получают /dir/pic.jpg

Та же проблема возникает не только с <a> но другие теги HTML.

Как я могу написать относительный URL в /dir/index.php это ссылки на /dir/pic.jpg какой URL-адрес используют посетители?

Мне нужно сохранить папку dir портативный (я могу изменить dirимя или используйте dir папку на другом веб-сайте, поэтому путь к ней может быть другим). Нам нужно другое решение, кроме жесткого кодирования href="/dir/pic.jpg".

Проблема в том, что вы почему-то не добавили косую черту в конце первого URL. Если этот каталог действительно существует на вашем сервере, вам пришлось бы намеренно неправильно настроить веб-сервер для этого. Вам следует отменить эту конфигурацию, чтобы сервер перенаправил первый пример на второй пример (по умолчанию).