МПМ Былины - Мир Древней Руси

МПМ Былины - Мир Древней Руси (https://www.bylins.su/vbb/index.php)
-   Ф/\Ей|\/| (https://www.bylins.su/vbb/forumdisplay.php?f=44)
-   -   Битые аттачи на форуме (https://www.bylins.su/vbb/showthread.php?t=1651)

dzMUDiST 26.10.2005 19:38

Битые аттачи на форуме
 
Почему в apache может передаваться битая информация (c) The OpenNET Project

Если используется русский apache и после закачки через форму файл приходит битый:
CharsetRecodeMultipartForms Off

Если пользователь скачивает битый файл (например, rar-архив):
- Убедитесь, что для типа вашего файла присутствует корректная запись вmime.types;
- Проверьте, какой тип по умолчанию установлен в httpd.conf, лучше поставить
DefaultType application/octet-stream

Если PHP скрипт выдает битую информацию:
1. Например, если в результате выполнения функции (например,
base64_encode($buffer)) на выходе получается битый файл (кавычки, \ и
символ с нулевым кодом экранированы символом \), то проблема в
использовании директив автоматического экранирования magic_quotes_gpc
(get, post, cookie) или magic_quotes_runtime (автоэкранирования в
некоторых функциях) в php.ini. Для решения проблемы нужно использовать
функцию stripslashes, например: base64_encode(stripslashes($buffer))

2. stripslashes не есть противоположностью addslashes/magic_quotes_*

Они точно так же могут испортить файл, потому что если в исходном файле встречается последовательность \<символ_экранирования> то \ в любом случае будет утерян.
magic_quotes_gpc надо в любом случае отключать или административно (php.ini, httpd.conf) или на свой виртуальниый хост через
.htaccess (mod_php)
php_flag magic_quotes_gpc off

php.ini (CGI и если правильно настроен suExec)
magic_quotes_gpc=off


Может быть эта информация поможет исправить проблему.

вбр.


Часовой пояс GMT +4, время: 10:30.

Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot