Директива safe_mode = on, mkdir и решение проблем создания папок на сервере
В PHP есть единственная функция – mkdir(), которая позволяет создавать на сервере сайта директории, которые порой так необходимы в хозяйстве. Например, при создании нового материала вам необходимо создать под него папку, куда опять же средствами вашей CMS вы будете заливать все необходимые файлы.
Пример:
mkdir("/path/to/my/dir", 0700);
Т.е. в определенной директории мы создаем новую папку и например задаем ей режим mode 0700, например для того, чтобы в папку можно было записывать файлы режим mode меняем на 0777.
Но вот тут то и возникает проблема с mkdir(). При выполнении этого php скрипта при включенной функции сервера safe_mode происходит проверка владельца (UID) и если не совпадает владелец скрипта и папки, то возможно вы не сможете, например, записать файл в созданную директорию, удалить файл в ней или, например через FTP у вас не получится удалить саму папку.
Но есть более изящное решение этой проблемы, без необходимости просить хостера отключать вам функцию safe_mode (данная функция включена абсолютно на всех хостингах по умолчанию, с целью обеспечения безопасности). В основе своей платные хостинги предоставляют и доступ к ftp, именно от этого мы и будем отталкиваться.
$conn_ftp = @ftp_connect('your_ftp_server', 21, 5);
Первая переменная в функции это адрес вашего ftp сервера, вторая порт, по которому вы соединяетесь с ftp и последняя это допустимый таймаут соединения. Немного о таймауте, он необходим для последующих сетевых операций, если его не вводить, то ставится значение по умолчанию, равное 90 секундам. После соединения мы проверяем прошло ли оно успешно и отправляем логин и пароль:
if($conn_ftp) // соединение прошло успешно
{
$login_result = @ftp_login($conn_ftp, 'user', 'pass'); // вводим свои логин и пароль для FTP
if($login_result) // проверка логина и пароля прошла успешно
{
ftp_pasv ($conn_ftp, TRUE);
}
}
После проверки логина и пароля нам необходимо определиться с пассивным режимом и выставить ему значения TRUE или FALSE - это необходимо если дальнейшие функции FTP будут работать неправильно. Теперь после определения пассивного режима мы можем создавать наши папки, я опишу все функции которые могут пригодиться вам в дальнейшем:
$file = ftp_mkdir ($conn_ftp, 'public_html/materials/345'); //Создание директории 345 в папке materials, если папки materials не существует, //то она так же будет создана, так же и с папкой public_html (данная директория //указана для того, чтобы вы видели весь путь, а так это просто папка с сайтом) ftp_chdir ($conn_ftp, 'public_html/materials'); //Если у вас точно есть папка materials, то вам не обязательно прописывать весь //путь, можно просто сначала в нее перейти и потом в ней создать папку 345 используя //следующий код ftp_mkdir ($conn_ftp, '345') ftp_chmod($conn_ftp, 0777, $file); //Все папки по умолчанию создаются с режимом mode 0755, данная команда позволит сменить //его на 0777, что позволит вам заносить файлы в созданную папку.
Теперь приведу полный пример рабочего кода, чтобы вы увидели как все это выглядит, например у меня:
$dir_name = time(); //Здесь я создаю имя папки по времени запуска скрипта
$conn_ftp = @ftp_connect('your_ftp_server', 21, 5);
if($conn_ftp) // соединение прошло успешно
{
$login_result = @ftp_login($conn_ftp, 'user', 'pass'); // вводим свои логин и пароль для FTP
if($login_result) // проверка логина и пароля прошла успешно
{
ftp_pasv ($conn_ftp, TRUE);
ftp_chdir ($conn_ftp, 'public_html/materials');
ftp_mkdir ($conn_ftp, $dir_name);
ftp_chmod($conn_ftp, 0777, $dir_name);
}
}
Стоит еще сказать немного об указании директорий при создании, если вы укажете в начале слэш, то папка будет создаваться относительно корня ftp. При подключении к серверу FTP вы всегда подключаетесь к корню, поэтому учтите этот момент.
Источник: http://feedproxy.google.com/~r/ruseller/CdHX/~3/3qxNpuckEQg/lessons.php
|
В PHP есть единственная функция – mkdir(), которая позволяет создавать на сервере сайта директории, которые порой так необходимы в хозяйстве. Например, при создании нового материала вам необходимо |
РэдЛайн, создание сайта, заказать сайт, разработка сайтов, реклама в Интернете, продвижение, маркетинговые исследования, дизайн студия, веб дизайн, раскрутка сайта, создать сайт компании, сделать сайт, создание сайтов, изготовление сайта, обслуживание сайтов, изготовление сайтов, заказать интернет сайт, создать сайт, изготовить сайт, разработка сайта, web студия, создание веб сайта, поддержка сайта, сайт на заказ, сопровождение сайта, дизайн сайта, сайт под ключ, заказ сайта, реклама сайта, хостинг, регистрация доменов, хабаровск, краснодар, москва, комсомольск |
Дайджест новых статей по интернет-маркетингу на ваш email
Новые статьи и публикации
- 2026-05-28 » Как выбрать и законно использовать стоковые фото для сайта
- 2026-05-28 » Как составить УТП для сайта, которое выделит вас на фоне тысяч серых шаблонов
- 2026-05-28 » «Белый перечень» онлайн-площадок, сохраняющих доступность при отключении мобильного интернета, — что в него попало
- 2026-05-28 » Не туда пишете: как фатальная ошибка в целевой аудитории убивает даже самый качественный контент
- 2026-05-28 » Как оставить отзыв на Яндекс Картах, чтобы модерация его точно пропустила
- 2026-05-23 » Yandex Commerce Protocol: как интернет-магазинам продавать через Алису AI
- 2026-05-23 » Красивые баннеры не продают: почему в 2026 году побеждает простота
- 2026-05-23 » Управление репутацией в 2026 году: нейровыдача как единая система влияния на клиента
- 2026-05-23 » 168-ФЗ 2026: инструкция по русификации сайта
- 2026-05-23 » Куда идти, если Телеграм окончательно заблокируют
- 2026-05-15 » Как происходит утечка данных и как с этим бороться
- 2026-05-15 » B2B-сайт не продает: 5 ошибок UX, которые превращают лидов в призраков
- 2026-05-15 » Как выбрать качественный и недорогой хостинг: правда о дешёвых тарифах
- 2026-05-15 » Зачем сайту SSL-сертификат и как получить его бесплатно прямо сейчас?
- 2026-05-15 » 7 причин медленной работы сайта: почему уходят клиенты и как это исправить
- 2026-05-07 » Будущее без cookies: альтернативные решения для идентификации пользователей
- 2026-05-07 » Маркетинговые приемы: как механики продаж управляют выбором покупателя
- 2026-05-07 » Чем грозят дублированный контент и пустые страницы: ошибки, которые убивают ваш трафик
- 2026-05-07 » Open Source — что должен знать бизнес перед тем, как взять чужой код
- 2026-05-07 » ИИ и Google: как 1446 сайтов вылетели из поиска и как вам избежать подобного
- 2026-05-03 » ГИГАНТЫ ОХОТОМОРЬЯ: Как исполнить мечту и поплавать с китами на краю Земли
- 2026-05-02 » Почему люди всё реже «гуглят» и как ИИ-поиск меняет интернет
- 2026-05-02 » Как дизайн формирует восприятие бренда?
- 2026-05-02 » Сайты и приложения проверят использование VPN у россиян
- 2026-05-02 » Как предотвратить утечку информации в компании
- 2026-05-02 » Как влиять на иррациональное поведение покупателей
- 2026-04-17 » Дырявая воронка продаж: где вы теряете клиентов и как это лечит CRM
- 2026-04-17 » ИИ‑контент против человека: как найти золотую середину
- 2026-04-17 » Сайты 2026–2027: почему побеждают простые и быстрые
- 2026-04-17 » Формы сбора согласий на сайте
Не было еще ни одного великого ума без примеси безумия. Аристотель |
Мы создаем сайты, которые работают! Профессионально обслуживаем и продвигаем их , а также по всей России и ближнему зарубежью с 2006 года!
Как мы работаем
Заявка
Позвоните или оставьте заявку на сайте.
Консультация
Обсуждаем что именно Вам нужно и помогаем определить как это лучше сделать!
Договор
Заключаем договор на оказание услуг, в котором прописаны условия и обязанности обеих сторон.
Выполнение работ
Непосредственно оказание требующихся услуг и работ по вашему заданию.
Поддержка
Сдача выполненых работ, последующие корректировки и поддержка при необходимости.

Мы создаем практически любые сайты от продающих страниц до сложных, высоконагруженных и нестандартных веб приложений! Наши сайты это надежные маркетинговые инструменты для успеха Вашего бизнеса и увеличения вашей прибыли! Мы делаем красивые и максимально эффектные сайты по доступным ценам уже много лет!
Комплексный подход это не просто продвижение сайта, это целый комплекс мероприятий, который определяется целями и задачами поставленными перед сайтом и организацией, которая за этим стоит. Время однобоких методов в продвижении сайтов уже прошло, конкуренция слишком высока, чтобы была возможность расслабиться и получать \ удерживать клиентов из Интернета, просто сделав сайт и не занимаясь им...
Мы оказываем полный комплекс услуг по сопровождению сайта: информационному и техническому обслуживанию и развитию Интернет сайтов.
Контекстная реклама - это эффективный инструмент в интернет маркетинге, целью которого является увеличение продаж. Главный плюс контекстной рекламы заключается в том, что она работает избирательно.