Intereting Posts
Загруженный файл превышает директиву upload_max_filesize в php.ini Как использовать отображаемое имя в качестве заголовка сообщения в настраиваемом типе сообщений? Как отличить структуру главной страницы от структуры страницы категории в шаблоне WordPress? Отображать чек, обозначенный таксономиями, как выпадающее меню Канонизация вопроса об академическом URL-адресе URL-адреса блога (get_post_ancestors == 2) возвращает true на 1? Могу ли я использовать wordpress для сайта без блога? iframe с видео Youtube появляется для зарегистрированных пользователей, но не для пользователей инкогнито Интеграция почтового архива с другим источником и сохранение упорядочения дат Могу ли я загружать сообщения через Ajax? Сделано поле поиска с полем, скрытым до выпадающего выделения. Всегда использовать один и тот же массив для разных запросов Просмотреть список всех вложений на сайте Несколько псевдонимов для одной страницы Как включить администратора сайта для редактирования пользователей в сетевой / мультисайтовой настройке WordPress?

Какие сценарии WordPress должны быть исполняемыми для новой установки?

По соображениям безопасности мне нужно заблокировать доступ к сценариям, которые не будут выполняться при новой установке WordPress.

Пример:

  • /index.php -> должен быть исполняемым
  • /wp-includes/cache.php -> не должен выполняться (он включен в другие файлы)

У кого-нибудь есть информация о том, какие файлы включены и которые действительно должны быть исполняемыми ?

Я хочу создать список допустимых файлов, которые могут быть выполнены через .htaccess, например:


Обновить:

Это файл .htaccess, который у меня есть – мой вопрос: завершена ли эта конфигурация или мне нужно разрешить работу большего количества файлов для новой установки WordPress?

<IfModule mod_rewrite.c> # ONLY ALLOW THESE SCRIPTS TO EXECUTE: # == Login, Signup, Activate RewriteRule ^wp-login.php - [L] RewriteRule ^wp-activate.php - [L] RewriteRule ^wp-signup.php - [L] # == All admin scripts and WYSIWYG editor RewriteRule ^wp-admin/ - [L] RewriteRule ^wp-includes/js/tinymce/wp-tinymce.php - [L] # == WP Cron and mail RewriteRule ^wp-cron.php - [L] RewriteRule ^wp-mail.php - [L] # == WP Comments form RewriteRule ^wp-comments-post.php - [L] # (...) <-- I need to know which other files need to be allowed # BLOCK ALL OTHER SCRIPTS RewriteCond %{REQUEST_FILENAME} -f RewriteRule \.(php.?|pl|cgi)$ - [F,L] </IfModule> 

Solutions Collecting From Web of "Какие сценарии WordPress должны быть исполняемыми для новой установки?"

Из-за архитектуры администратора WP это действительно неудобный список для надежной компиляции и поддержки.

Моя лучшая образованная догадка заключается в том, что многие (но, возможно, не все и не только) из этих файлов должны будут требовать, чтобы функция инициализации загружалась ( wp-admin/admin.php ).

Я проверил быстрый поиск по соответствующей директиве со следующими результатами:

 C:\server\www\dev\wordpress\src>ack --files-with-matches --literal "require_once( dirname( __FILE__ ) . '/admin.php' );" wp-admin/about.php wp-admin/admin-header.php wp-admin/comment.php wp-admin/credits.php wp-admin/customize.php wp-admin/edit-comments.php wp-admin/edit-tags.php wp-admin/edit.php wp-admin/export.php wp-admin/freedoms.php wp-admin/import.php wp-admin/index.php wp-admin/link-add.php wp-admin/link-manager.php wp-admin/link.php wp-admin/media-new.php wp-admin/media-upload.php wp-admin/media.php wp-admin/ms-admin.php wp-admin/ms-delete-site.php wp-admin/ms-edit.php wp-admin/ms-options.php wp-admin/ms-sites.php wp-admin/ms-themes.php wp-admin/ms-upgrade-network.php wp-admin/ms-users.php wp-admin/my-sites.php wp-admin/nav-menus.php wp-admin/network/about.php wp-admin/network/credits.php wp-admin/network/edit.php wp-admin/network/freedoms.php wp-admin/network/index.php wp-admin/network/plugin-editor.php wp-admin/network/plugin-install.php wp-admin/network/plugins.php wp-admin/network/profile.php wp-admin/network/settings.php wp-admin/network/setup.php wp-admin/network/site-info.php wp-admin/network/site-new.php wp-admin/network/site-settings.php wp-admin/network/site-themes.php wp-admin/network/site-users.php wp-admin/network/sites.php wp-admin/network/theme-editor.php wp-admin/network/theme-install.php wp-admin/network/themes.php wp-admin/network/update-core.php wp-admin/network/update.php wp-admin/network/upgrade.php wp-admin/network/user-edit.php wp-admin/network/user-new.php wp-admin/network/users.php wp-admin/network.php wp-admin/options-discussion.php wp-admin/options-general.php wp-admin/options-media.php wp-admin/options-permalink.php wp-admin/options-reading.php wp-admin/options-writing.php wp-admin/options.php wp-admin/plugin-editor.php wp-admin/plugin-install.php wp-admin/plugins.php wp-admin/post-new.php wp-admin/post.php wp-admin/press-this.php wp-admin/revision.php wp-admin/term.php wp-admin/theme-editor.php wp-admin/theme-install.php wp-admin/themes.php wp-admin/tools.php wp-admin/update-core.php wp-admin/update.php wp-admin/upload.php wp-admin/user/about.php wp-admin/user/credits.php wp-admin/user/freedoms.php wp-admin/user/index.php wp-admin/user/profile.php wp-admin/user/user-edit.php wp-admin/user-edit.php wp-admin/user-new.php wp-admin/users.php wp-admin/widgets.php 

Права на файл / папку WordPress должны быть следующими.

Для каталогов: 755

Для файлов: 644

Кроме следующих:

/ wp-content / 774

/ wp-content / themes / = 755 или 775 (для разрешения редактирования)

/ wp-content / plugins / = 755 Некоторые плагины будут жаловаться, но если им нужен доступ на запись, они сообщают вам об этом.

/ wp-content / uploads / = 775, чтобы рекурсивно применять только к каталогам. Файлы в этой папке будут иметь разные разрешения в зависимости от того, что они собой представляют.

Никогда не используйте 777

Информация, представленная на следующих страницах, поможет вам.

http://codex.wordpress.org/Changing_File_Permissions http://codex.wordpress.org/Hardening_WordPress https://stackoverflow.com/a/18352747/1287548 http://www.smashingmagazine.com/2014/05/08 / правильно- WordPress-файловая система разрешения_доступ-домовладения /

Чтобы разрешить / запретить выполнение файла с использованием .htaccess, см. Ответы, представленные в следующих разделах и статьях.

https://stackoverflow.com/a/8415600/1287548 https://stackoverflow.com/a/11950077/1287548 http://www.wpbeginner.com/wp-tutorials/how-to-disable-php-execution- in-sure-wordpress-directories / http://perishablepress.com/stupid-htaccess-tricks/

Я использую эту команду bash для быстрого и простого сброса прав доступа WordPress, просто перейдите в свою корневую папку WP и запустите оба:

каталоги

find . -type d -exec chmod 755 {} \;

файлы

find . -type f -exec chmod 644 {} \;