Как я могу скрыть расширение моего изображения? - PullRequest
0 голосов
/ 10 сентября 2018

У меня на локальном хосте есть ссылка, указывающая на изображение в формате jpg.Я хочу продолжать использовать ту же самую ссылку, но я хочу в конечном итоге заменить изображение на файл слова.Или PDF-файл.Или файл GIF.Или любое другое расширение, не являющееся изображением jpg.

(Поверьте мне, оно имеет смысл в контексте, но контекст не важен для вопроса, поэтому я его опущу.)

Как я могу создать ссылку на эти файлы без расширения файла в конце?Я мог бы создать страницу php и вставить туда изображение (или другой тип файла), но у меня есть одно требование: URL должен быть таким же, как URL изображения.Поэтому специально для файлов jpg, png и gif только (не беспокойтесь о других типах файлов), я хочу иметь возможность щелкнуть по нему правой кнопкой мыши, когда я просматриваю его в своем браузере, перейдите к «Копировать адрес изображения"и получите ту же самую точную ссылку, что и в адресной строке моего браузера, как будто я просматриваю обычное изображение.

Возможно ли что-то подобное?

Повторим:
- мне нужно создать ссылку, которая может быть любой тип файла
- если ссылка указывает на файл, который является изображением (jpg, png, gif), ссылкаВы получаете от "Копировать адрес изображения" должно быть так же, как ссылка, которую вы используете для просмотра в браузере

Пример:

Это изображение, которое я сохранил на своем ПК:
C: \ xampp \ htdocs \ my_projects \ my_image.jpg

Я могу просмотреть его непосредственно в своем браузере по этой ссылке:
localhost /my_projects / my_image.jpg

Однако я действительно хочу что-то вроде этого:
localhost / my_projects / my_image

So Я мог бы заменить оригинальный jpg-файл на png-файл, например:
C: \ xampp \ htdocs \ my_projects \ my_image.png

И после редактирования любой файл отвечает за генерацию "localhost / my_projects/ my_image "чтобы указать на изображение PNG вместо изображения JPG, я все еще могу использовать ту же ссылку, что и раньше, и получить изображение PNG на этот раз:
localhost / my_projects / my_image

Что важно длямне вот что: enter image description here

Надеюсь, это прояснит мой вопрос.

Ответы [ 2 ]

0 голосов
/ 10 сентября 2018

Вам нужно переписать правила.

Создайте файл .htaccess в вашем каталоге.

Затем добавьте этот код в ваш файл .htaccess:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME}.png-f
RewriteCond %{REQUEST_URI} !/$
RewriteRule ^(.*)$ $1\.png

RewriteCond %{REQUEST_FILENAME}.jpg-f
RewriteCond %{REQUEST_URI} !/$
RewriteRule ^(.*)$ $1\.jpg

RewriteCond %{REQUEST_FILENAME}.gif-f
RewriteCond %{REQUEST_URI} !/$
RewriteRule ^(.*)$ $1\.gif

Надеюсь, это поможет.

0 голосов
/ 10 сентября 2018

Если вы знаете каталог или местоположение файла.

Вы можете выбрать имя файла с его расширением. вам не нужно указывать имя файла в front-end.

$directory = 'folder';
if($handle = opendir($directory.'/')){
    echo 'looking inside \''.$directory.'\':<br>';
    while($file = readdir($handle)){
       if($file!='.'&&$file!='..'){
          echo '<a href="'.$directory.'/'.$file.'">'.$file.'</a><br>';
       }
    }
}

перечислите их или загрузите.

...