Я порівняно новачок у веб-розробці, тому будьте терплячі.
Я в першу чергу розробник iPhone, але нещодавно створив сайт для когось іншого, який використовує спільний хостинг. Я міг би писати у файли на PHP на цьому веб-сайті добре, не маючи думки про дозволи.
Я зараз розгортаю веб-сервіс для нового додатка, який я роблю, але це не дуже добре йде. Найголовніша відмінність тут - я використовую чужий сервер і просто маю доступ до FTP / DB.
В основному я завантажую PHP-файли, які складають мою CMS, наприклад:
mysite.com/admin/manage_news.php
mysite.com/admin/manage_events.php
Ці сценарії потім редагують базу даних або файли. Вони можуть добре взаємодіяти з БД, проте мої сценарії не можуть записати у файлову систему. Наприклад, вони можуть спробувати записати в такі файли:
mysite.com/data/img/event_1.png
mysite.com/data/somefile.txt
Це добре спрацювало на моєму встановленні MAMP (локально), але одного разу, розгорнувшись на сервері, PHP виявляв помилки щоразу, коли робилася спроба запису ... щось подібне:
Не вдалося відкрити файл "../data/img/someimage.png" для запису.
Тож я надіслав електронною поштою хлопцеві, який працює на сервері, і він повернувся, сказавши:
Це працює з громадським дозволом? (777)
І це було - але я дуже обережно користувався публічними дозволами, тому знову відключив це. Я надіслав його по електронній пошті, кажучи "як я можу зробити свої сценарії PHP писати, використовуючи стандартні дозволи користувача", і він сказав:
Залиште це як публічне, це буде добре
Я вважаю, що це конфлікт ip десь у дозволі домену, але мене це не турбує.
Потім я надіслав його електронною поштою, сказавши, що "напевно це небезпечно" або щось подібне, і він відповів наступним чином:
реальність така, що є мільйони веб-сайтів, у тому числі кілька, якими я керую, які мають 777 у різних папках, це просто спосіб життя.
Чи міг би хтось дати мені якесь уявлення про рішення, яке я міг би дати йому? Або що я можу зробити, щоб не використовувати 777? Мені дуже не подобається, що будь-які папки на моєму веб-сайті / службі можуть бути доступними для публічного доступу.
Я дуже вдячний за вашу пораду, оскільки я дуже мало знаю про веб-серверах.