Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
alexsamos33
618 / 598 / 325
Регистрация: 26.04.2014
Сообщений: 1,968
#1

Странное добавление к имени файла при загрузке его на сервер

21.07.2015, 21:45. Просмотров 429. Ответов 4
Метки нет (Все метки)

Когда я на сервер загружаю какой-нибудь .jpg файл (картинку) имя файла само преобразовывается.
Например загружаю filename.jpg, а в итоге получаю файл xfilename.jpg.ic.oWSUHkebpF.jpg.
Из-за скрипта это не зависит, так как происходит это обсолютно при любом коде. Например:
PHPHTML
1
2
3
4
5
6
7
8
9
$uploaddir = '/var/www/uploads/';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
 
echo '<pre>';
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
    echo "Файл корректен и был успешно загружен.\n";
} else {
    echo "Возможная атака с помощью файловой загрузки!\n";
}
В массиве $_FILES всё нормально, имя оригинальное, а вот уже на сервере после перемещения файла имя изменяется. Это как бы не мешает, но просто интересно узнать откуда такое поведение?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.07.2015, 21:45
Ответы с готовыми решениями:

закачка файла на сервер и изменение его имени
Такая задача... Закачать файл на сервер, и переименовать его имя там.... ...

Генератор уникального имени файла при загрузке
Товарищи, прошу у вас помощи, накидал форму загрузки файла на сервер, с...

Название файла при загрузке на сервер
&lt;? $filew = $_FILES; $filename = $_FILES; if(!empty($filew)) {...

Не сохраняется имя файла при загрузке на сервер
Привет друзья. Такая ситуация. Есть страничка добавления своего баннера в...

При загрузке файла на сервер меняется кодировка
Здравствуйте, возник такой вопрос: Написал код для загрузки на сервер, файлы...

4
pav1uxa
1855 / 1709 / 802
Регистрация: 23.01.2014
Сообщений: 6,082
Завершенные тесты: 1
22.07.2015, 00:30 #2
alexsamos33,
PHP
1
2
3
4
5
6
7
8
9
10
11
<?php
$uploaddir = '/var/www/uploads/';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
 
echo '<pre>';
echo $uploadfile.PHP_EOL;
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
    echo "Файл корректен и был успешно загружен.\n";
} else {
    echo "Возможная атака с помощью файловой загрузки!\n";
}
Что выводит?
Цитата Сообщение от alexsamos33 Посмотреть сообщение
basename($_FILES['userfile']['name'])
Для чего тут basename()? В переменно $_FILES['userfile']['name'] только название файла на компьютере пользователя, пути к нему там нет.
0
alexsamos33
618 / 598 / 325
Регистрация: 26.04.2014
Сообщений: 1,968
22.07.2015, 07:17  [ТС] #3
pav1uxa, Выводит нормальное имя, например photo001.jpg,
но уже на сервере файл приобразовывается в xphoto001.jpg.pagespeed.ic.oWSUHkebpF.jpg.
Пробовал также копировать через copy - результат одинаковый.

Добавлено через 2 минуты
Вот ещё что заметил. Если размер файла маленький, имя файла остаётся оригинальным, но если картинка весит 1 мб или больше, то уже идёт приобразование. Я думаю это какой-то модуль на сервере, который ускоряет загрузку страниц, так как pagespeed.
0
Para bellum
Эксперт PHP
4056 / 3023 / 966
Регистрация: 06.01.2011
Сообщений: 8,858
22.07.2015, 07:44 #4
Цитата Сообщение от alexsamos33 Посмотреть сообщение
Я думаю это какой-то модуль на сервере
Ну да, а иначе бы мы тут с Вами не разговаривали. mod_pagespeed наверное установлен. Честно говоря, я сам про него только узнал.
0
alexsamos33
618 / 598 / 325
Регистрация: 26.04.2014
Сообщений: 1,968
22.07.2015, 08:10  [ТС] #5
Цитата Сообщение от Para bellum Посмотреть сообщение
Честно говоря, я сам про него только узнал.
Я тоже
0
22.07.2015, 08:10
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.07.2015, 08:10

При загрузке файла на сервер выдает ошибку 500
Всем доброго времени суток, помогите решить проблемму, пытаюсь загрузить на ...

Замена пробелов на "_" при загрузке файла на сервер
Не подскажите, почему файловые хостинги проделывают данную операцию? Думал, что...

PHP. Загрузка файлов на сервер. Максимальная длинна имени файла
Здравствуйте уважаемые коллеги. :hi Расскажу о своей ситуации для общего...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru