WordPress — это мощная платформа со множеством самых гибких опций, и она как нельзя кстати подходит для создания корпоративной сети. В этой статье я расскажу, как создать интрасеть на WordPress для вашей организации, сохраняя при этом конфиденциальность и безопасность.
Содержание
Интранет или Экстранет — это коммуникационная платформа, используемая организацией для обмена сообщениями, файлами, анонсами и другими организационными материалами.
WordPress–отлично подходит для создания внутренней сети какой-либо организации, т.к. он прост в обслуживании, имеет открытый исходный код. Для него разработаны тысячи всевозможных плагинов, которые нужны для добавления самых разнообразных функций, которые могут вам понадобиться.
Интрасеть работает на частной корпоративной сети. Как правило, офисная ИТ-система подключается через кабельные или беспроводные сетевые адаптеры. Один компьютер в такой сети может использоваться как веб-сервер и размещать веб-сайт WordPress.
Вы можете ознакомиться с моим руководством — как установить WordPress на локальный сервер Mamp для того, чтобы создать корпоративную сеть WordPress.
С другой стороны, экстрасеть является платформой интрасети, доступной для большей сети или общедоступного Интернета. Или если говорить простым языком, то это общедоступный веб-сайт, но только для авторизованных пользователей.
Особенно полезным и удобным такой сайт может быть для крупных организаций, имеющих филиалы в разных странах мира.
Для создания корпоративной сети вампотребуются учетная запись на WordPress хостинге и доменное имя. После этого вы можете установить WordPress, а затем настроить его так, чтобы получилась корпоративная сеть.
Для этого вам понадобится несколько плагинов WordPress. Я покажу вам базовую настройку, которая станет основой для будущей интрасети WordPress, отвечающей целям вашей организации.
BuddyPress–это дочерний проект WordPress. С его помощью можно преобразовать WordPress сайт в социальную сеть. Вот некоторые возможности интрасети, поддерживаемой BuddyPress:
Итак, для того, чтобы приступить к работе, установите и активируйте плагин BuddyPress . Если у вас возникнут с этим трудности, то читайте, как установить плагин на WordPress.
После активации зайдите в Настройки » BuddyPress для того, чтобы настроить работу плагина.
Если вы для внутренней сети используете локальный сервер, то вы можете ее защитить, ограничив доступ к внутренним IP-адресам в вашем файле .htaccess.
Однако если вы используете Extranet, то пользователи могут получить доступ к интрасети из разных сетей и IP-адресов.
Поэтому вам необходимо сделать экстрасеть частной и доступной только для зарегистрированных пользователей, чтобы только авторизованные пользователи могли получать доступ к вашей корпоративной сети.
Для этого установите и активируйте плагин All-in-One Intranet.
После активации перейдите на страницу Настройки » All—in—OneIntranet.
Обязательно поставьте галочку напротив опции «Force site to been tirely private» (Сделать сайт полностью частным). Это сделает все страницы вашего сайта скрытными.
Единственное, что этот плагин не может сделать частным так это файлы в каталоге «загрузки». Но не переживайте, чуть позже я расскажу, как и их скрыть от посторонних глаз.
Затем укажите URL-адрес на который вы хотите перенаправлять пользователей при входе в систему. Это может быть любая страница в вашей интрасети.
И наконец, вы можете автоматически выкидывать из системы неактивных пользователей, указав в соответствующем боксе минуты допустимого простоя.
Не забудьте нажать кнопку «Сохранить изменения», чтобы сохранить настройки.
Как я уже сказал настройки конфиденциальности сайта с помощью плагина «Все-в-одном»не затрагивают медиа файлы. Это значит, что если кто-то знает точный URL-адрес файла, он может получить к нему доступ без каких-либо ограничений.
Давайте исправим это!
Для лучшей защиты мы будем перенаправлять все запросы, сделанные в папку uploads, на простой PHP-скрипт.
Этот php скрипт проверяет, есть ли данный пользователь в системе. Если он в ней есть, то он увидит файл. В противном случае пользователь будет перенаправлен на страницу входа в систему.
Чтобы все так настроить: для начала создайте новый файл на вашем компьютере, например, с помощью обычного текстового редактора«Блокнот». После этого скопируйте и вставьте следующий код. Сохраните на рабочем столе данный файл под именем download-file.php.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
<?php
require_once('wp-load.php');
is_user_logged_in() || auth_redirect();
list($basedir) = array_values(array_intersect_key(wp_upload_dir(), array('basedir' => 1)))+array(NULL);
$file = rtrim($basedir,'/').'/'.str_replace('..', '', isset($_GET[ 'file' ])?$_GET[ 'file' ]:'');
if (!$basedir || !is_file($file)) {
status_header(404);
die('404 — File not found.');
}
$mime = wp_check_filetype($file);
if( false === $mime[ 'type' ] && function_exists( 'mime_content_type' ) )
$mime[ 'type' ] = mime_content_type( $file );
if( $mime[ 'type' ] )
$mimetype = $mime[ 'type' ];
else
$mimetype = 'image/' . substr( $file, strrpos( $file, '.' ) + 1 );
header( 'Content-Type: ' . $mimetype ); // always send this
if ( false === strpos( $_SERVER['SERVER_SOFTWARE'], 'Microsoft-IIS' ) )
header( 'Content-Length: ' . filesize( $file ) );
$last_modified = gmdate( 'D, d M Y H:i:s', filemtime( $file ) );
$etag = '"' . md5( $last_modified ) . '"';
header( "Last-Modified: $last_modified GMT" );
header( 'ETag: ' . $etag );
header( 'Expires: ' . gmdate( 'D, d M Y H:i:s', time() + 100000000 ) . ' GMT' );
// Support for Conditional GET
$client_etag = isset( $_SERVER['HTTP_IF_NONE_MATCH'] ) ? stripslashes( $_SERVER['HTTP_IF_NONE_MATCH'] ) : false;
if( ! isset( $_SERVER['HTTP_IF_MODIFIED_SINCE'] ) )
$_SERVER['HTTP_IF_MODIFIED_SINCE'] = false;
$client_last_modified = trim( $_SERVER['HTTP_IF_MODIFIED_SINCE'] );
// If string is empty, return 0. If not, attempt to parse into a timestamp
$client_modified_timestamp = $client_last_modified ? strtotime( $client_last_modified ) : 0;
// Make a timestamp for our most recent modification...
$modified_timestamp = strtotime($last_modified);
if ( ( $client_last_modified && $client_etag )
? ( ( $client_modified_timestamp >= $modified_timestamp) && ( $client_etag == $etag ) )
: ( ( $client_modified_timestamp >= $modified_timestamp) || ( $client_etag == $etag ) )
) {
status_header( 304 );
exit;
}
readfile( $file );
|
Соединитесь со своим сайтом через FTP-клиент и загрузите только что созданный файл на сайт в папку /wp-contents/uploads/ .
После этого, в корневой папке своего сайта отредактируйте файл .htaccess. А именно: добавьте следующий код в самый низ файла:
1
2
|
RewriteCond %{REQUEST_FILENAME} -s
RewriteRule ^wp-content/uploads/(.*)$ download-file.php?file=$1 [QSA,L]
|
Не забудьте сохранить изменения и заново загрузить файл на сайт.
Теперь все пользовательские запросы в медиа-папку будут направляться на прокси-скрипт для проверки подлинности и перенаправления пользователей на страницу входа.
Главная цель корпоративной сети – это коммуникация сотрудников. Плагин BuddyPress отлично справляется с потоками активности, комментариями и личными сообщениями.
Однако при проведении опросов, исследований порой необходимо собирать информацию от сотрудников конфиденциально. Кроме того, эту информацию в дальнейшем надо не только собрать, но и отсортировать и сохранить.
Для этих целей больше всего подходит ряд функций, предлагаемых плагином WPForms. На сегодняшний момент это лучший разработчик форм WordPress.
С его помощью можно не только легко создать красивые формы, но и сохранить ответы пользователей в базе данных, а также экспортировать ответы из любой формы в CSV-файл.
Кроме того, благодаря функциям этого плагина можно легко организовать опросы: создать специальные опросные формы, распечатать их и раздать сотрудникам.
Перед тем как перейти к расширению корпоративной сети, она у вас должна быть уже максимально идеально настроена для нужд компании. Однако часто возникает желание и потребность сделать ее еще более функциональной и безопасной.
Для этого существует множество плагинов и вот некоторые из них, которые можно не боясь добавить на сайт:
Вот и все.
Надеюсь эта статья помогла вам разобраться с корпоративной сетью. Возможно, вам также интересно и полезно будет узнать о самых лучших seo плагинах для сайта.
Если вам понравилась эта статья, то, пожалуйста, не забывайте ставить лайк. Подписывайтесь на мой канал в YouTube, находите меня в социальных медиа.
Я подготовил для Вас обращение, с ним можете ознакомиться тут
Макс Метелев - автор, блоггер, актер местного театра, ведущий городских мероприятий. Делюсь только лучшим!