Я новичок в веб-разработке и изучаю PHP, чтобы продавать несколько двоичных файлов (общий хост Linux). Сайт еще не запущен.
Мои php-скрипты (50% заимствованный код, 50% написаны самостоятельно, 95% полностью понятны) входят в MySQL, чтобы ПРОЧИТАТЬ предметы для продажи, и ЗАПИСАТЬ данные транзакций продажи в другую таблицу. Файл Functions.php, расположенный в подпапке webroot, содержит логин и пароль для MySQL.
Q1. Это не кажется мне безопасным. Как следует хранить информацию о логине / пароле, чтобы скрипты могли получить к ней доступ? Если functions.php хранится вне webroot, могут ли это быть файлы .php, расположенные в webroot #include (PHP "require_once")? (Я попробовал это однажды, и мои скрипты сломались таким образом, что, казалось, они были связаны с разрешениями - если бы я знал, что должно работать, я бы продолжал к этому подключаться)
Q2. Я не уверен, где хранить двоичные файлы, которые покупатели могут загрузить. Верно ли, что опытные пользователи могут каким-то образом найти / загрузить их (без оплаты), если я просто сохраню их в подпапке webroot? Можно ли использовать файл .htaccess, чтобы заблокировать доступ к папке «binaries» в webroot? Могут ли черные шляпы получить / изменить файл .htaccess?
Q3. Было бы лучше сохранить двоичные файлы (максимум = 4 МБ) в таблице MySQL и скопировать их оттуда во временный файл в webroot перед каждой загрузкой, а затем удалить?
Q4. Кто-нибудь может порекомендовать набор сценариев, управляющих такими вещами, которые я мог бы пересмотреть / изменить, а не изобретать велосипед?
Спасибо