Установка WordPress
В 90% случаев полностью установить WordPress можно очень быстро, буквально за 5-10 минут, но это при условии, что у вас уже есть хостинг и домен. Более того, многие хостинги предлагают инструменты для автоматической установки WordPress. В этом руководстве описаны все моменты связанные с установкой. И некоторые из них будут полезны даже пользователям, у которых уже есть опыт установки WordPress.
Здесь будет рассмотрена установка WordPress на удаленный сервер. На локальный сервер все делается аналогично. Итак, поехали...
Подготовка к установке
Прежде чем начать установку:
Обязательно нужно:
-
Иметь локальный или удаленный сервер, готовый к работе. У вас должен быть доступ к файлам/папкам на сервере. Обычно это shell или FTP доступ, который выдается хостинг-провайдером. Или это панель управления хостингом, которую предоставляет провайдер для управления файлами на сервере и сервером в целом;
-
Убедиться, что сервер подходит для WordPress. Вообще, 90% провайдеров подходят для WordPress и сильно переживать по этому поводу не стоит.
Смотрите офф доку по требованиям https://ru.wordpress.org/about/requirements/
WordPress требует:
- PHP версии 7.4+.
- MySQL версии 8.0+ или MariaDB 10.5.
- 128 мегабайта оперативной памяти на сервере.
Последние актуальные требования смотрете на офф странице.
Рекомендую хостинг: beget.ru. Пользуюсь им давно и могу сказать о нем много хорошего. Также хороши: timeweb.ru и Евробайт.
-
Нужен сам WordPress:
-
Последняя русская версия WordPress: https://ru.wordpress.org/latest-ru_RU.zip
- Последняя английская версия WordPress: https://wordpress.org/latest.zip
-
Нужно, но не обязательно:
-
Нормальный текстовый редактор, чтобы изменять файлы. Рекомендую скачать Sublime Text или Notepad++. Такой простой редактор текста так или иначе пригодится при работе с сайтом.
- FTP-клиент - программа для загрузки файлов на сервер. Рекомендую filezilla. Впрочем, можно обойтись без программы, современные хостинг провайдеры предоставляют удобный веб-интерфейс для работы с файлами на сервере.
Установка за 5 минут
Установка без создания wp-config.php файла и других файлов, все делает сам WordPress. Но для такой установки сервер должен разрешать создание и редактирование файлов в папках.
В любом случае, пробуйте сначала установить этим способом, если не получится, то используйте следующий способ, где файл wp-config.php нужно создавать вручную.
Порядок действий:
1. Скачайте WordPress.
Скопируйте все файлы WordPress из скаченного ZIP архива в корневую директорию сервера (в папку сайта). Копируются такие папки/файлы:
wp-admin wp-includes wp-content index.php wp-load.php ...
2. Создайте базу данных на сервере.
Создается она в панели управления сервером. При создании базы данных вы привязываете к ней пользователя MySQL — он должен иметь все возможные права: изменять, создавать базы данных и таблицы в них и т.д.
3. Откройте браузер и перейдите на свой сайт.
Перейдите по ссылке http://example.com, где example.com ваш сайт, появится такое окно:

Кликаем «Вперед» видим такое окно:

Указываем все поля. Пароли вы получили при создании базы данных. Поле «Сервер базы данных» в 99% оставляете «localhost». Жмем «Отправить». Если все поля были указанны правильно, получим:

Это значит что файл конфигурации wp-config.php был создан в корне сайта. Жмем «Запустить установку» и устанавливаем сайт:

На этом этапе WordPress создаст нужные таблицы в базе данных и пользователя - администратора сайта. Нажимаем «Установить WordPress» и видим:

Все, сайт установлен!
Установка за 10 минут
Если не получилось установить первым способом, то используйте эту инструкцию.
Если что-то непонятно или хотите углубиться в подробности, ниже смотрите каждый пункт подробно.
-
Создайте базу данных на сервере, которую будет использовать WordPress. При создании базы данных вы привязываете к ней пользователя MySQL — он должен иметь все возможные права: изменять/создавать базу данных и таблицы в ней и т.д.
-
Скачайте WordPress (ZIP архив) и распакуйте его к себе на компьютер;
-
Откройте распакованную папку wordpress и переименуйте файл
wp-config-sample.php
вwp-config.php
— это основной файл конфигурации WordPress; -
Откройте
wp-config.php
в текстовом редакторе и укажите в нем настройки подключения к базе данных, которую только что создали:define('DB_NAME', 'name'); // Имя базы данных define('DB_USER', 'username'); // Имя пользователя MySQL define('DB_PASSWORD', 'password'); // Пароль доступа к базе данных
-
Разместите файлы WordPress на сервере. Тут есть несколько вариантов:
-
Установка в корневую директорию — это директория на сервере куда «смотрит» сайт http://example.com/. Скопируйте содержимое распакованной папки wordpress (где лежит файл wp-config.php) в корневую папку сервера (обычно это папка
www
илиpublic_html
). - Установка в поддиректорию (http://example.com/blog/). Переименуйте распакованную папку wordpress в название, куда хотите установить WordPress (например
blog
) и скопируйте эту папку в корневой каталог на сервере. Допустим, вы хотите установить систему в папкуblog
на сервере, тогда вам нужно переименовать "wordpress" в "blog" и скопировать её в корень сервера.
-
-
В браузере перейдите по ссылке на ваш сайт.
- Если устанавливали в корень сервера, то нужно переходить по ссылке: http://example.com и вас перекинет на http://example.com/wp-admin/install.php;
- Если устанавливали в отдельную папку (допустим "blog"), то нужно переходить по ссылке: http://example.com/blog и вас перекинет на http://example.com/blog/wp-admin/install.php;
- Если все сделано правильно, то вы увидите диалоговое окно установки WordPress (смотрите выше). Дальше делайте все как там написано и через пару минут сайт будет готов к работе.
Этапы установки
А теперь, давайте подробно рассмотрим каждый этап установки.
Этап: Загрузка и распаковка файлов WordPress
Загрузите и распакуйте дистрибутив WordPress к себе на компьютер.
Далее, загрузите все файлы из скаченного архива в корневую директорию сайта на сервере.
Корневая директория — это папке к которой относится URL вашего сайта: http://example.com, обычно такие папки на сервере называются www или public_html.
Копируются такие папки/файлы:
wp-admin wp-includes wp-content index.php wp-load.php ...
Загрузка WordPress сразу на сервер
Если у вас есть shell доступ к веб-серверу и опыт работы с консольными приложениями, вы можете загрузить WordPress напрямую на веб-сервер минуя свой компьютер, используя команду wget:
wget https://ru.wordpress.org/latest-ru_RU.zip
Далее распакуйте дистрибутив используя команду:
tar -xzvf latest-ru_RU.zip
Дистрибутив WordPress будет распакован в папку wordpress
и будет лежать в той же папке где и архив latest-ru_RU.zip.
Если у вас нет shell доступа, или опыта работы с консольными приложениями, вы можете загрузить WordPress напрямую на веб-сервер используя программу ZipDeploy.
Этап: Создание базы данных
Для WordPress нужна база данных MySQL или MariaDB. Базу данных можно создать разными способами, зависит от того каким сервером вы пользуетесь.
Если вы пользуетесь услугами хостниг-провайдера, то уточните у провайдера, возможно база данных уже создана для вас.
Если базу нужно создавать самостоятельно, то общий принцип действий для всех хостинг провайдеров такой:
-
Заходите в панель управления хостингом (ссылку на панель вы получили при регистрации у хостера).
-
Находите где-то в меню раздел «Базы данных» или «MySQL»
-
Создаете в этом разделе базу данных. Для базы данных нужно указать её название, а также для базы данных указывается её пользователь. Если пользователя нет, то его нужно создать. Для пользователя указываете имя и пароль.
- Все данные нужно сохранить: название базы данных, имя пользователя, пароль пользователя. Эти данные будут использоваться в файле
wp-config.php
при установке WordPress.
Чтобы посмотреть на примерах как создается база данных, ниже несколько видео уроков по этому теме:
Создание базы данных в cPanel:
Создание базы данных в ISPmanager:
Создание базы данных в DirectAdmin:
Создание базы данных в Plesk:
Если у вашего хостинг провайдера другая панель, то делается все по аналогии... В крайнем случае, если ничего непонятно, пишите в тех поддержку хостинга, создать базу данных вам там помогут или сделают это за вас.
Создание базы данных в phpMyAdmin
Если на хостинге нет панели-управления или она есть, но там нельзя создать базу данных, то на всех серверах установлен phpMyAdmin и базу данных можно создать там.
Вот подробное видео как это делать:
Инструкция в текстовом формате →
Работа с консолью MySQL
Если у вас есть shell доступ к веб-серверу и вы умеете пользоваться командной строкой, а ваш MySQL пользователь имеет права для создания других MySQL пользователей и баз данных, тогда используйте нижеприведенную инструкцию, чтобы создать пользователя и базу данных для WordPress.
$ mysql -u adminusername -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 5340 to server version: 3.23.54 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> CREATE DATABASE databasename; Query OK, 1 row affected (0.00 sec) mysql> GRANT ALL PRIVILEGES ON databasename.* TO "wordpressusername"@"hostname" -> IDENTIFIED BY "password"; Query OK, 0 rows affected (0.00 sec) mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.01 sec) mysql> EXIT Bye $
Вам нужно вписать ваши значение в следующие переменные:
adminusername
чаще всего имеет значение root, в том случае, если у вас нет иного аккаунта с более высокими привилегиями.wordpress
илиblog
- подходящие названия для вашей базы данных databasename.wordpress
подхдящее название для имени пользователя wordpressusername.hostname
чаще всего имеет значение localhost. Если вы не знаете значения данной переменной, советуем вам узнать ее у вашего системного администратора.password
пароль - желательно, если он будет включать в себя символы, представленные в верхнем и нижнем регистре, спец. символы, цифры и буквы.
Этап: Настройка файла wp-config.php
В дистрибутиве WordPress нет файла wp-config.php, а есть его пример: wp-config-sample.php. Конфиг нужно создавать на основе этого файла, т.е. нужно удалить суффикс '-sample', открыть файл в текстовом редакторе и заменить там следующие строки:
define('DB_NAME', 'putyourdbnamehere'); // Имя базы данных define('DB_USER', 'usernamehere'); // Имя пользователя MySQL define('DB_PASSWORD', 'yourpasswordhere'); // ...и пароль define('DB_HOST', 'localhost'); // 99% эту строку изменять не надо define('DB_CHARSET', 'utf8'); // обычно не изменяется define('DB_COLLATE', ''); // обычно не изменяется
Пояснения каждого параметра:
- DB_NAME
- Имя созданной базы данных.
- DB_USER
- Имя пользователя для WordPress.
- DB_PASSWORD
- Пароль, который вы выбрали для пользователя при создании базы данных.
- DB_HOST
- Имя хоста на котором находится база данных, почти всегда это локальный хост и тут указывается localhost.
- DB_CHARSET
- Кодировка базы данных, почти всегда остается без изменения
- DB_COLLATE
- Тип сравнения символов в указанной в DB_CHARSET кодировке. Чаще всего значение не требует изменений и остается пустым
Ключи аутентификации
Также, обязательно нужно изменить ключи аутентификации. Эти ключи используются в разных местах кода WordPress для защиты от взлома:
define('AUTH_KEY', 'впишите сюда уникальную фразу'); define('SECURE_AUTH_KEY', 'впишите сюда уникальную фразу'); define('LOGGED_IN_KEY', 'впишите сюда уникальную фразу'); define('NONCE_KEY', 'впишите сюда уникальную фразу'); define('AUTH_SALT', 'впишите сюда уникальную фразу'); define('SECURE_AUTH_SALT', 'впишите сюда уникальную фразу'); define('LOGGED_IN_SALT', 'впишите сюда уникальную фразу'); define('NONCE_SALT', 'впишите сюда уникальную фразу');
Такие ключи (такой код) можно генерировать по ссылке: https://api.wordpress.org/secret-key/1.1/salt/
Префикс таблиц
В принципе этот префикс можно не трогать, все будет работать. Указанный в переменной $table_prefix
будет использоваться для всех создаваемых таблиц. Изменение этого префикса уникализирует название таблиц (рекомендую оставить его как есть).
$table_prefix = 'wp_';
С версии WP 2.6 файл wp-config.php
можно переместить на одну выше. Т.е. если файл находится в каталоге /public_html/wordpress/wp-config.php его можно переместить в каталог /public_html/wp-config.php. WordPress его найдет.
Этап: Размещение файлов (структура файлов)
На этом шаге вам нужно определиться в какую папку размещать файлы. При получении паролей от хостинга, в письме обычно указывается корневой каталог сайта - это та папка куда ведет ссылка вашего сайта: например, http://example.com/ или http://example.com/blog/. Если вы не понимаете где находится корневой каталог сайта, то узнайте это в тех. поддержке хостинга.
Существует 3 типа размещения файлов WordPress.
1. Файлы WP в корневом каталоге или подкаталоге
Переместите файлы из установочного ZIP архива в каталог на сервере. Перемещайте как есть, т.е. копироваться будет такие файлы:
wp-admin wp-includes wp-content index.php wp-config.php ...
Допустим за УРЛ http://example.com/ отвечает папка на сервере sites/example.com/public_html тогда все эти файлы нужно скопировать в папку public_html и затем перейдя по ссылке http://example.com/ начнется установка WordPress.
Если вы хотите разместить WordPress в подпапку (допустим blog), то вам нужно создать эту папку на сервере и скопировать файлы туда, т.е. копировать будете в: sites/example.com/public_html/blog/. В этом случае, сайт будет находиться по ссылке http://example.com/blog.
2. Файлы WP во вложенной папке
Этот вариант показывает как разместить WordPress в отдельном каталоге, но при этом оставить URL сайта на корневой каталог.
wp wp-admin wp-includes wp-content wp-load.php ... остальные файлы wp-config.php index.php .htaccess
Что получится в итоге: URL сайта будет, например, http://example.com, но файлы самого WordPress при этом будут лежать во вложенной папке wp
, которая находится в папке, которой соответствует наш URL. Т.е. WordPress позволяет установить файлы WordPress в подкаталог, но сайт будет работать в корневом каталоге.
Процесс перемещения WordPress в свой собственный каталог выглядит следующим образом:
-
Создайте новый каталог в корневом каталоге сайта. Назовем его
/wp
. -
Переместите все файлы WordPress в новый каталог
/wp
. -
Верните перемещенные файлы:
index.php
и.htaccess
обратно в корневой каталог. -
Откройте файл index.php (из корневого каталога) и измените в нем строку:
// заменяем такую строку require( dirname( __FILE__ ) . '/wp-blog-header.php' ); // на require( dirname( __FILE__ ) . '/wp/wp-blog-header.php' );
-
Перейдите в «Настройки» сайта. Админка теперь находится по адресу:
http://example.com/wp/wp-admin/
. -
Измените опции:
Адрес WordPress (URL)
- укажите URL где размещены файлы WordPress:http://example.com/wp
.Адрес блога (URL)
- укажите URL самого сайта:http://example.com
.
- Готово!
3. Файлы ядра WP во вложенной папке
Читайте также доку: https://codex.wordpress.org/Размещаем_WordPress_в_отдельном_каталоге
Для удобства можно изменить структуру файлов WordPress так, что файлы ядра (т.е. которые обновляются при обновлении WordPress) будут лежать в отдельной папке, например в папке wp
, а все остальные файлы в корне сайта. Получиться такая структура файлов:
wp wp-admin wp-includes wp-load.php index.php ... остальные файлы ... wp-config.php тут быть не должно, иначе сайт не будет работать! wp-content index.php wp-config.php .htaccess
Для такого размещения:
-
Создайте папку
wp
и переместите туда все файлы/папки ядра. Это все файлы кроме:wp-content/
wp-config.php
-
Скопируйте файл
/wp/index.php
в корневую папку сайта. -
Откройте скопированный файл
/index.php
(в корне сайта) и измените в нём путь до файлаwp-blog-header.php
:require __DIR__ . '/wp-blog-header.php'; // заменяем на require __DIR__ . '/wp/wp-blog-header.php';
Или можно указать путь до оригинального файла index.php:
require __DIR__ . '/wp-blog-header.php'; // заменяем на require __DIR__ . '/wp/index.php';
-
Теперь нужно изменить пути до папки контента, потому что мы переместили движок, а папку контента оставили в корне сайта, но WordPress ожидает её рядом с папками ядра: wp-admin, wp-includes. Для этого откройте файл
/wp-config.php
и добавьте туда такие строки (добавляйте в начало файла):// определяем директорию wp-content $scheme = ( (! empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') || $_SERVER['SERVER_PORT'] == 443 ) ? 'https' : 'http'; define( 'WP_CONTENT_DIR', __DIR__ .'/wp-content'); define( 'WP_CONTENT_URL', sprintf( "%s/wp-content", $_SERVER['HTTP_HOST'] ? "$scheme://{$_SERVER['HTTP_HOST']}" : '' ) );
Или без протокола:
define( 'WP_CONTENT_DIR', __DIR__ .'/wp-content'); define( 'WP_CONTENT_URL', sprintf( "%s/wp-content", $_SERVER['HTTP_HOST'] ? "//{$_SERVER['HTTP_HOST']}" : '' ) );
Путь и URL в итоге должны смотреть на папку /wp-content.
-
Замена опции
siteurl
Этот шаг нужен только если вы изменяете структуру на уже установленном сайте.
Нужно изменить значение опции
siteurl
в таблице базы данныхwp_options
. Нужно добавитьwp
в конец URL. Т.е. меняем сhttp://example.com
наhttp://example.com/wp
.Сделать это можно в
Настройки > Общее
в админке - теперь адрес сайта будет отличаться от адреса WordPress (ядра):Заметка: после этой смены, вы можете увидеть предупреждение («PHP Warning»), не пугайтесь в этом нет ничего страшного, оно появится один раз и дальше все будет работать как надо!
Другие варианты изменить siteurl:
-
Через WP-CLI, следующей командой wp option update:
wp option update siteurl https://example.com/wp
-
Через константу WP_SITEURL. Добавьте константу WP_SITEURL в wp-config.php:
define( 'WP_SITEURL', 'https://example.com/wp' );
-
В папке движка wp
не должно быть файла wp-config.php. Если он там есть, то будет срабатывать он, а не тот который находится в корне сайта. Это вызовет ошибку и сайт работать не будет.
В корневой папке не должно быть файла wp-settings.php
.
Вообще при переносе он переносится, но может так случится, что вы не переносите файлы, а копируете в новую папку движка wp
(например, когда хочется перестраховаться и сначала все скопировать, проверить все ли работает, а затем удалить, теперь уже, ненужные файлы). Так вот, если в корневой папке будет находится файл wp-settings.php
, то WP будет считать корневую папку папкой ядра, а не нашу новую папку wp
.
Полезная заметка по теме: баг с перемещением папки uploads
Этап: Запуск установки WordPress
После того, как база данных создана, файлы скопированы и wp-config.php создан, нужно запустить установку WordPress. При установке будут созданы нужные таблицы в базе данных и будет создан пользователь - администратор сайта.
Чтобы начать установку нужно зайти на сайт (перейти по URL):
- Если файлы WordPress размещены в корневом каталоге сервера, то ссылка будет такая: http://example.com/;
- Если файлы WordPress размещены в подкаталоге, то ссылка будет такая: http://example.com/blog/, где blog название подкаталога.
В обоих случаях вас должно перекинуть на страницу http://example.com/wp-admin/install.php или http://example.com/blog/wp-admin/install.php.
При установке вы будите вводить название сайта и ваш email. Также, при установке вы можете «попросить поисковые системы не индексировать сайт», для этого поставьте галочку напротив такого пункта.
Любую введенную информацию можно изменить в админ-панели в дальнейшем. Нельзя будет изменить только логин пользователя.
Проблемы при установке
Ошибка 1: «error database connection»
Если в процессе установки «вылезла» ошибка: «error database connection» (ошибка соединения с базой данных), то:
- Проверьте правильно ли указано имя, логи и пароль в файле wp-config.php;
- Убедитесь, что созданный пользователь обладает правами на доступ к базе данных WordPress;
Ошибка 2: «Headers already sent»
Если при установке появляются ошибки типа: Headers already sent. Возможно, вы допустили ошибку при редактировании wp-config.php.
Как исправить?
Откройте wp-config.php в текстовом редакторе.
- Убедитесь, что файл начинается с <?php, и что до этого ничего нет: ни пробелов ни пустых строк.
- Убедитесь, что последняя или предпоследняя строка не содержит ?>. Если такой символ там есть - удалите его.
Установка через Composer
Такой вид установки может быть удобен по ряду причин. Основная причина - это полный контроль над версией WP через код проекта, а не через админку WP.
Для такой установки, вам нужно создать файл composer.json
в корне проекта. В этом файле нужно указать кастомный репозиторий и добавить wordpress как пакет в зависимости:
{ "name": "wp-yoda/composer-with-wordpress", "description": "Example of using Composer for installing WordPress core and plugins", "repositories": [ { "type": "package", "package": { "name": "wordpress/wordpress", "version": "6.2.2", "type": "wordpress-core", "dist": { "type": "zip", "url": "https://github.com/WordPress/WordPress/archive/refs/tags/6.2.2.zip" } } } ], "require": { "wordpress/wordpress": "*" }, "scripts": { "post-install-cmd": "cp -r ./vendor/wordpress/wordpress/* ./" } }
Теперь нужно запустить команду composer install
.
-
Подробнее про установку WP через composer читайте тут: https://wp-yoda.com/?p=648
-
Также смотрите репозиторий: https://github.com/doiftrue/wordpress-composer-repo
- Также смотрите Как полностью отключить проверку обновлений WordPress для ядра
Права доступа к файлам/папкам (chmod)
При правильной настройке прав доступа WordPress сможет напрямую создавать файлы, и поэтому он не будет запрашивать учетные данные FTP при обновлении или установке плагинов.
Разрешения будут отличаться от хоста к хосту, поэтому ниже описаны только общие принципы. Тут нельзя охватить все случаи.
Общие правила:
- Все папки должны быть исполняемыми, чтобы был доступ к файлам в них - это 7 или 5.
- Никакие файлы не должны быть исполняемыми - это 6 или 4.
Пример разрешений:
Perms | Perms | |
---|---|---|
7 | r+w+x | все права: чтение / запись / исполнение. |
6 | r+w | чтение / запись |
5 | r+x | чтение / исполнение |
4 | r | чтение |
755 | -rwxr-xr-x | владелец может все (7), группа и другие только читать / исполнять. |
750 | -rwxr-x--- | владелец может все (7), группа читать / исполнять (5), другие ничего. |
666 | -rw-rw-rw- | все могут читать / писать. |
644 | -rw-r--r-- | владелец может читать / писать, другие только читать. |
640 | -rw-r----- | владелец может читать / писать, группа читать, другие ничего. |
600 | -rw------- | только владелец может читать / писать. |
440 | -r--r----- | только владелец и группа могут только читать. |
400 | -r-------- | только владелец может читать. |
Любой файл, которому требуется доступ на запись от WordPress, должен принадлежать пользователю из под которого работает WordPress (php) или этот пользователь WordPress должен находиться в группе, имеющей доступ на запись.
Права нужно ставить так:
-
папки 755, файлы 644
- когда пользователь WordPress (php) тот же под которым вы подключаетесь по FTP и изменяете файлы. папки 775, файлы 664
- когда пользователь WordPress (php) отличается от пользователя под которым вы подключаетесь по FTP и изменяете файлы. При этом пользователь WordPress (php) должен быть в группе, имеющей доступ на запись.
Следующие файлы должны/могут отличаться от базовых настроек:
wp-config.php
- (600) - может изменить / смотреть только владелец и никто другой. Этот файл изначально создается с правами 644, и оставлять его в таком виде опасно./wp-content/cache/
- (755 или 775) - полный доступ./wp-content/uploads/
- (755 или 775) - полный доступ./wp-content/blogs.dir/
(мультисайт) - (755 или 775) - полный доступ.
Если вы хотите использовать встроенный редактор тем, все файлы должны быть доступны для групповой записи.
Некоторые плагины требуют, чтобы папка /wp-content/
также была доступна для записи. Они вас об этом уведомят.
Подробнее о правах к файлам и папкам WordPress читайте здесь: https://wordpress.org/documentation/article/changing-file-permissions/
Шаред хостинги
Вышесказанное может не относиться к системам виртуального хостинга, которые используют подход "suexec" для запуска двоичных файлов PHP. Это популярный подход, используемый многими хостингами. В таких системах процесс php запускается как владелец самих файлов php, что позволяет упростить конфигурацию и обеспечить более безопасную среду.
В конфигурации suexec правильная схема проста:
- папки - 755 или 750.
- файлы - 644 или 640.
Схема подробнее:
-
Все файлы должны принадлежать учетной записи реального пользователя, а не учетной записи пользователя, используемой для процесса httpd.
-
Групповое владение не имеет значения, если только нет особых требований к группам для проверки разрешений процесса веб-сервера. Обычно это не так.
Все каталоги должны иметь права 755 или 750. -
Все файлы должны иметь права 644 или 640. Исключение: wp-config.php должен быть 440 или 400, чтобы другие пользователи сервера не могли его прочитать.
- Никаким каталогам не должно быть присвоено право 777, даже каталогам загрузки. Поскольку процесс php работает как владелец файлов, поэтому достаточно 755.
--
При написании этого руководства я использовал официальный сайт и личный опыт.