1c web интерфейс настройка lighttpd

Обновлено: 07.07.2024

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

Предварительные настройки

Установка минимума необходимых компонентов:

Указаны компоненты, которые отсутствуют в минимальной конфигурации Debian и могут частично присутствовать в другой конфигурации.
При желании можно руссифицировать интерфейс операционной системы и прикладных программ.
Команда:

В появившемся интерфейсе нужно выбрать русский язык - локаль: ru_Ru.UTF-8.
Затем ту же локаль выбрать по умолчанию.
После нового подключения к серверу через SSH-клиент русская локаль должна работать.

MariaDb

Установка необходимых пакетов:

В ходе установки в ответ на запрос потребуется указать хороший взломоустойчивый root-пароль базы данных.

Затем для безопасности рекомендуется выполнить:

В появившемся диалоге потребуется указать только что заданный вами root-пароль, ответить на вопросы (обычно это n,y,y,y,y)

Дальнейшие настройки веб-сервера будут происходить после установки обработчика языка PHP.

PHP 7 (PHP-FPM)

В связи с тем, что на момент подготовки данной статьи (начало 2016 года) в стандартном репозитарии Debian 8 отсутствует пакет PHP 7 версии, потребуется подключить сторонний репозитарий:

Добавьте в имеющийся файл следующие строки:

Для корректной работы с пакетами нужна установка ключа этого репозитария:

Обновление списка пакетов:

Установка пакета PHP 7:

Установка расширений PHP для работы CMS:

Приведенный набор расширений может оказаться избыточным, конкретный выбор зависит от CMS. Лишние расширения в теории - добавочный путь для уязвимостей.

Настройка параметров PHP в конфигурационном файле:

В этом файле для исправления настройки безопасности раскомментировать строку с текстом:

Там же во время теста были изменены значения двух параметров по умолчаний, которые мешают загрузке дампа базы данных м его распаковке в PhpMyAdmin, ограничивая в интерпретаторе php максимальный размер загружаемого файла и время исполнения скрипта:

Перезапуск сервиса php:

Создаем резервную копию конфигурации и редактируем ее:

Заменяем содержимое редактируемого файла на нижеследующее:

Подключаем модули Лайти:

Не меняя папку, в которой находимся, создаем ссылку для запуска новой конфигурации:

Перезапускаем службу сервера Лайти для применения новых параметров.

Проверяем корректную работу полученной связки, создав тестовый файл в папке сервера по умолчанию:

Если все корректно настроено, то у вас получится увидеть большую тестовую страницу PHP, открыв в браузере URL:

Не забудьте после теста удалить файл info.php.

Настройка нескольких хостов

Для определения пути расположения каждого сайта открываем файл конфигурации Лайти:

В этом файле после строк описания сервера (server.port = . ) добавляем строки для описания каждого сайта:

Для применения новых параметров - новый перезапуск Лайти:

Чистые ссылки

Ниже описана конфигурация, предназначенная для CMS Drupal 7. Она подходит, как есть, для большинства других CMS, но не для Drupal 8.

Устанавливаем LUA и magnet ( ниже указана текущая версия Lua, которая может в дальнейшем отличаться цифрой):

Подключаем мод magnet:

Редактируем файл конфигурации Лайти:

добавляем в начале файла в списке модулей строку:

а в конце файла добавляем строку, указывающую путь к файлу скрипта "drupal.lua" :

Создаем файл скрипта:

В том случае, если файлы CMS находятся не в корневой папке сайта, потребуется изменить в файле строку с текстом "local prefix". Например, для локальной папки с сайтом /drupal эта строка будет выглядеть так:

Снова перезапускаем Лайти, чтобы изменения настроек вступили в силу:

Почти наверняка потребуется отправка почты с сайта, например, для регистрации новых пользователей, оповещении об новостях, отчетов о доступных обновлениях и т.д. Если тестовая отправка не работает, как это было в моем случае, то потребуется настроить почтовый агент. В моем случае это Exim. Установка Exim:

Отвечаем на вопросы в появившемся интерфейсе настройки, например:

  • Интернет сайт (прием и отправка напрямую).
  • Имя сервера (стоит по умолчанию). 127.0.0.1
  • Другие места (пусто)
  • Домены релейные (пусто)
  • Сокращать кол-во dns-запросов – нет
  • Метод доставки – любое значение
  • Делить на маленькие файлы – нет
  • Адрес для сбора почты postmaster | root – указать

Полученные настройки будут сохранены в файле /etc/exim4/update-exim4.conf
Но перед тестированием работы почты нужно не забыть запустить:

Псевдонимы файлов и каталогов

Настройка псевдонимов каталогов. Часто веб-приложения устанавливаются в каталог, отличный от корня документов веб-сервера. Чтобы такие веб-приложения заработали, нужно включить и настроить модуль mod_alias:
Чтобы выдавать пользователям с разными IP-адресами разное содержимое, можно воспользоваться условными блоками:
Аутентификация при доступе к каталогу

Чтобы защитить некоторые каталоги сайта паролем, можно воспользоваться модулем mod_auth (я обычно использую бэкенд htdigest):
Для управления файлом паролей в Debian можно установить пакет apache2-utils, в нём есть программы htpasswd для управления файлом паролей для бэкенда plain и htdigest для управления файлом паролей бэкенда htdigest.

Почитайте документацию - модуль mod_auth позволяет брать пользователей из каталога LDAP (в том числе Active Directory).

К примеру, вот так создаётся файл паролей с одним новым пользователем:
Для добавления новых пользователей в уже существующий файл нужно воспользоваться той же командой, но без опции -c:
Классический CGI

Модуль FastCGI

Для управления автономными FastCGI-серверами можно воспользоваться менеджером процессов из пакета spawn-fcgi, который умеет порождать, перезапускать и убивать процессы FastCGI. Для запуска этого менеджера процессов можно воспользоваться следующим сценарием инициализации:
Этот сценарий породит менеджер процессов для запуска файлов PHP от имени пользователя user1. FastCGI-бэкенд будет доступен на IP-адресе 10.0.0.1, на порту 8080.

Я предпочитаю использовать именно spawn-fcgi, а не php-fpm, т.к. первый является, на мой взгляд более надёжным, потому что в полной мере проповедует модульный подход к построению программного обеспечения. Похоже, я не одинок, и разработчики Debian придерживаются точно такого-же мнения, избегая включать php-fpm в стабильный дистрибутив Debian.

Хочу отметить, что выполнение сценариев PHP в режиме FastCGI не столь эффективно, каким могло бы быть. Это связано с тем, что файл PHP, хоть и не требует повторного запуска интерпретатора и трансляции кода выполняемого скрипта, но выполняется каждый раз от начала и до конца, включая код инициализации и деинициализации. При обработке каждого нового запроса заново открываются подключения к базам данных, осуществляется чтение файлов конфигурации, загрузка шаблонов HTML-страниц.

Чтобы проиллюстрировать сказанное, а заодно и закончить рассмотрение модуля mod_fastcgi, приведу пример простейшего FastCGI-приложения на Perl с использованием модуля CGI::Fast:
Запросы обрабатываются строго поочерёдно. Для ускорения обработки запросов и нужен менеджер процессов, который породит оптимальное количество FastCGI-процессов и распределит между ними нагрузку. Он же должен убивать простаивающие процессы или перезапускать процессы, обработавшие определённое максимальное количество запросов - во избежание утечки памяти.

Пример на Perl взят отсюда: Связка Nginx + Пускач + FastCGI на Perl. На том же сайте можно почитать подробнее о том, что собой представляет FastCGI изнутри.

После установки 1С необходимо убедиться что сервер 1С запущен. Автор обычно запускает сервер вручную. Но если вы уверены что сервер 1С запущен, то этот шаг делать не надо.



1.2. Зарегистрировать кластер 1С


Запустить утилиту администрирования серверов 1С:


В открывшемся окне зарегистрировать новый центральный сервер 1С предприятия:



В появившемся окне ввести сетевое имя компьютера, на котором запущен 1С Сервер (или его IP-адрес):

1.3. Зарегистрировать базу 1С на сервере SQL


Для начала регистрации базы необходимо запустить приложение 1С. В появившемся окне "Запуск 1С:Предприятия" регистрируем новую базу нажатием на кнопку "добавить":

Выбираем "Создание новой информационной базы":

В появившемся окне есть возможность создать базу из шаблона, или создать новую пустую базу (в последствии можно будет загрузить базу, загрузить конфигурацию или создать свою конфигурацию):


Жмем кнопку далее, вводим название базы и тип расположения базы на сервере:

жмем далее и заполняем поля:
При этом необходимо заметить, что поле "Имя базы данных" - это названия базы на SQL сервере. А поле "Имя информационной базы" - название базы на сервере 1С.
После чего выбираем вариант аутентефикации в 1С (Выбирать автоматически) и жмем кнопку "Готово":

1.4. Загрузить или создать конфигурацию 1С

Запустить конфигуратор с базой:


Загрузить ранее выгруженную информационную базу:

2. Настройка IIS на сервере

2.1. Проверка установленных компонент IIS


Для работы веб-клиента 1С:Предприятия необходимы службы IIS, которые небыли установлены по умолчанию при установке Windows 8.1 x64.
Для их установки следует перейти "Пуск - Панель управления - Программы и компоненты - Включение или отключение компонентов Windows". В появившемся дереве, в ветке "Службы IIS – Службы интернета - Компоненты разработки приложений" отметить все компоненты, как показано на рисунке. Затем нажать кнопку "Ок":

2.2. Разрешение 32-разрядных приложений в пуле приложений


Веб-клиент 1С:Предприятия 8.3 является 32-разрядным приложением. Поэтому для 64-разрядной ОС необходимо разрешить работу оных в пуле приложений сервера IIS. Для этого необходимо перейти "Пуск - Панель управления – Администрирование – Диспетчер служб IIS". В диспетчере служб выбрать "Пулы приложений – DefaultAppPool – Дополнительные параметры". В списке дополнительных параметров переменной "Разрешены 32-разрядные приложения" установить значение "True":


Установить значение в True для параметра "Разрешены 32-разрядные приложения":

2.3. Установка удостоверения пула приложений в качестве удостоверения анонимного пользователя

По умолчанию в качестве анонимного пользователя установлен пользователь IUSR, которого нет в системе. Дабы не создавать оного можно просто включить удостоверение пула приложений в качестве удостоверения анонимного пользователя. Для этого необходимо перейти "Пуск - Панель управления – Администрирование – Диспетчер служб IIS". В диспетчере служб перейти в "Проверка подлинности:



На пункте "Анонимная проверка подлинности" вызвав контекстное меню "изменить":

В открывшемся диалоге отметить "Удостоверение пула приложений". Закрыть диалог, нажав кнопку "ОК".


3. Публикация WEB-приложения из 1С

Для публикации приложения необходимо иметь полный доступ на папку проектов IIS. Есть 2 способа публикации приложения из 1С. 1 - сначала создать необходимую папку в каталоге "C:\inetpub\wwwroot\" в нашем случае это папка с названием "Base1C" и дать права текущему пользователю на полный доступ на эту папку. 2 способ зайти в 1С из под администратора а потом дать необходимые права на папку уже опубликованного приложения. В э статье описан второй путь.

3.1. Для публикации конфигурации на сервере IIS необходимо запустить 1С из под администратора:

Вызываем контекстное меню на ярлыке 1С и выбераем "Запуск от имени администратора"




Выбираем базу и запускаем 1С в режиме конфигуратора:



3.2. Запустить публикацию на web-сервере

Для начала публикации переходим в меню "Администрирование - Публикация на веб-сервере":



В появившемся окне указать имя публикации, указать веб-сервер и указать путь на веб-сервере.
1С позволяет публиковать на любой доступный веб-сервер в сети с помощью утиллиты webinst. В статье использовался пример публикации на локальный компьютер:

Более подробную информацию по пунктам в окне публикации можно получить из 1С конфигуратора нажав на кнопку F1.

4. Настройка библиотек для работы в 64-х разрядной ОС

После публикации на веб-сервере из конфигуратора, в случае использования 64-х разрядной операционной системы на компьютере который используется в качестве сервера IIS, необходимо настроить работу с библиотеками 1С. Это делается каждый раз после публикации на веб-сервере.

Для настройки библиотек необходимо выполнить следующие действия.
Открываем через Панель Управления - Администрирование Диспетчер служб IIS.
В открывшемся окне раскрываем группу "Сайты" и наш сайт (в примере Base1C).
Нажимаем на "Сопоставление обработчиков" в группе IIS:

В открывшемся окне ищем строку с именем "ISAPI-dll" и нажимаем пункт меню в действиях "Добавить сопоставление сценария. "

В открытом окне "Добавление сопоставления сценария" в поле "Путь запроса" ввести символ * (звездочка, т.е. все). В поле "Исполняемый файл" выбрать библиотеку wsisapi.dll с каталога установленной 32-х разрядной версии 1С. В поле "Имя" можно задать любое имя (в примере Имя = 1С):


Некоторые специалисты в других статьях указывают что надо отключить ограничение сопоставления запроса. Автор не нашел зависимости работы этой отметки для программы 1С. Данная информация приводиться информативно, может быть кому то понадобиться.
Настроить ограничения запроса можно нажав на кнопку "Ограничение запроса" в окне Добавление сопоставления сценария. В открывшемся окне убрать отметку с "Вызывать обработчик только при сопоставлении запроса с:":


Нажать кнопку Ok.
На появившейся вопрос ответить "Да":

После чего необходимо перезапустить службу IIS. Для этого необходимо перейти в корень панели "Подключения" (на название сервера) и в меню действия справа выбрать "Перезапустить":


После чего можем проверить, работает ли подключенная библиотека. Для этого переходим в "Ограничения ISAPI и CGI":


И посмотреть, есть ли ссылки для необходимых обработчиков (dll):

Еще раз следует отметить, что данную процедуру настройки библиотек следует делать каждый раз после публикации приложения из 1С.

5. Настройка прав доступа на папки и Брандмауэра Windows

5.1. Настройка доступов к папкам

Для правильной работы всех пользователей, а не только администраторов с опубликованным веб-приложениям необходимо настроить некоторые права на папки.
Для настройки прав на пакпи необходимо в проводнике Windows вызвать контекстное меню для необходимой папки и выбрать в контекстном меню пункт "Свойства" и перейти на закладку "Безопасность"


В данном случае речь идет о правах на 3 папки:
1. "C:\Program Files (x86)\1cv8\8.3.5.1088\bin\" (в этой папке находится библиотека wsisapi.dll) (номер релиза "8.3.5.1088" может быть другой)
2. C:\inetpub\wwwroot\Base1C (это созданная нами папка которая будет использоваться для доступа из интернет)
3. КаталогБазы (это база 1С, если используется файловый тип базы), в нашем примере база храниться на SQL сервере, поэтому каталога базы нет и доступа на него давать не надо.
Для всех папок (Пункты: 1,2,3) необходимо для пользователя IIS_IUSRS установить доступ "Полный доступ":

Для папки с нашей базой (Пункт 3) данных для пользователя Users, установить доступ "Изменение".

5.2. Настройка доступов к портам в Брандмауэре Windows

Если планируется использовать web-доступ не только локально, то необходимо настроить Брандмауэр Windows для доступа с внешних ресурсов, указав порт доступа 80. Автор не использовал настроек брандмауэра, а просто отключил его:

Contents

Установка

Настройка

Совет: Проверить правильность настроек и выявить ошибки можно с помощью команды:

Если такого пользователя нет в системе, добавляем его командой:

Проверим правильность установки

При этом файлы будут включаться в порядке их следования в каталоге, что может привести к непредсказуемым результатам. В качетсве решения можно перед названием файла ставить цифры, например, 10-auth.conf , 20-fastcgi.conf , 21-fastcgi-php.conf .

Совет: Для корректной обработки различных типов файлов нужно определить mime-типы: Совет: После изменения конфигурационных файлов не забудьте перезапустить сервер: Важно: По умолчанию lighttpd будет запускать процессы от пользователя и группы "http".

Этот модуль позволяет выполнять различные CGI программы. Пример конфигурации CGI модуля приведён ниже:

Совет: Чтобы файлы с некоторым расширением исполнялись безо всякой спец. программы, просто не указывайте никакую CGI-программу:

Файл без расширения, но имеет определённую правую часть URL:

FastCGI

Устанавливаем FastCGI командой:

Важно: По умолчанию lighttpd будет запускать процессы от пользователя и группы "http".

Следующее содержимое нужно добавить в файл конфигурации

Устанавливаем php и php-cgi

Проверяем, что php-cgi работает:

Если вы увидели похожий вывод, значит всё установлено правильно.

Примечание: Если вы получаете ошибки, подобные этим "No input file found" при попытке получить доступ к вашему php файлу, убедитесь, что следующие директивы активированы в /etc/php/php.ini :

И что файлы доступны для чтения всем:

Проверяем работу php:

Совет: Если вы хотите, чтобы в html файлах обрабатывался php-код, добавьте в fastcgi-php.conf :

php-fpm

Устанавливаем php-fpm и запускаем демон:

Примечание: Настройки php-fpm находятся в файле /etc/php/php-fpm.conf . Подробнее о настройках php-fpm [устаревшая ссылка 2020-12-27] .

SSI (Server Side Includes — включения на стороне сервера) — несложный язык для динамической «сборки» веб-страниц на сервере из отдельных составных частей и выдачи клиенту полученного HTML-документа.

Важно: Если вы используете одновременно mod_ssi и mod_compress, то mod_ssi должен быть загружен до mod_compress.

Создаем директорию для хранения сертификатов:

Генерируем самоподписанный сертификат (пример команды):

Примечание: Подробнее о создании сертификатов смотрите отдельную статью.

Выставляем владельца и нужные права:

Вы также можете использовать named-based виртуальным хостинг, чтобы реализовать несколько SSL серверов:

Примечание: SNI поддерживается не всеми браузерами. Подробнее. IP-based виртуальный хостинг лишён этого недостатка.

mod_redirect должен быть включён:

Сжатие исходящих данных

Сжатие исходящих данных уменьшает нагрузку на сеть и может улучшить общую пропускную способность веб-сервера.

На сегодня поддерживается только статичное содержимое.

Сервер автоматически договаривается какой метод сжатия использовать. Поддерживается gzip, deflate, bzip.

Ограничение на размер сжимаемых файлов: от 128 байт до 128 мегабайт.

Создаём нужную директорию и задаём владельца:

В данном примере будут удалены все файлы, которые старше 10 дней.

Совет: Вы также можете использовать условия (имя хоста или url), чтобы задать произвольный каталог для сжатых фавйлов.

Сжатие динамического контента

Для сжатия динамического контента (PHP) в /etc/php/php.ini нужно включить следующую директиву:

Совет: Вы также можете задать уровен сжатия с помощью директивы zlib.output_compression_level.

Управление кешем браузера пользователя

Можно также перечислить отдельные расширения файлов:

Альтернативу предыдущему листингу:

Виртуальные хосты

Использование условий

Первый способ заключается в изменении server.document-root в зависимости от содержимого заголовка "host".

mod_simple_vhost

Этот способ более прост и экономичен. В указанной директории хостинга имя каждого каталога соответствует аналогичному имени вируального хоста. Внутри каждого такого каталога находится dccroot вируального хоста.

Docroot для каждого вируального хоста строится из следующих трёх значений:

  • server-root
  • hostname
  • document-root

Абсолютный путь к docroot'у строится из:

в случае если путь не существует

Совет: Вы можете использовать символьные ссылки чтобы соотнести несколько имён хостов одной директории.

В качестве примера приведём следующий:

mod_evhost

Модуль evhost создаёт document-root, основываясь на шаблнах. Эти шаблоны представляют различные части запроса "host":

С помощью этого моудля можно также организовать виртуальные хосты для поддоменов:

Листинг директорий

Листинг включается для всех каталогов, в корне которых нет файлов перечисленных в директиве index-file.names.

Чтобы включить листинг для отдельного каталога укажите следующее:

Совет: Для исключения из листинга скрытых файлов используется директива dir-listing.hide-dotfiles = "enable". Список исключений, основанный на регулярных выражениях, задаётся директивой dir-listing.exclude

Ограничение доступа

Для использования ограничения доступа необходим включить mod_access:

Ограничиваем доступ к файлам, заканчивающимся на "

Запрет доступа к сайту для определённого IP:

Ограничение доступа к каталогу /libraries :

Запрет доступа к каталогу /stats всех кроме IP адресов 200.19.1.5 и 210.45.2.7:

Важно: При совместном использовании директив url.access-deny и server.error-handler-404 при запросе запрещённого контента запросы будут направляться согласно директиве server.error-handler-404 (Подробнее).Чтобы этого избежать необходимо добавить server.error-handler-404 = "forbidden" внутрь условия, содержащего url.access-deny. Пример:

Аутентификация

Важно: Если mod_fastcgi и mod_auth используются вместе, то mod_auth должен быть загружен до mod_fastcgi.

Методы

  • Basic метод передаёт имя пользователя и пароль по сети в открытом виде(закодированными в base64), что способствует возникновению проблемы безопастности в случае если соединение между клиентом и сервером не шифруется.
  • Digest метод передаёт только хешированную информацию, что значительно повышает конфидециальность аутентификационных данных в незащищённых сетях.
Важно: Реализация digest метода в настоящий момент не полностью соответствует стандарту, позволяя осуществить replay attack.

Backends

  • plain
  • htpasswd (crypt only)
  • htdigest
  • ldap

Для digest аутентификации:

plain

Файл содержит строки с именами пользователей и паролями в открытом виде. Имя пользователя и пароль разделяются двоеточием. Например:

htpasswd

Файл содержит строки с именами пользователей и зашифрованными с помощью crypt() паролями. Имя пользователя и пароль разделяются двоеточием.Например:

htdigest

Файл содержит строки с именами пользователей, realm'ом и зашифрованными с помощью md5() паролями. Имя пользователя, realm и пароль разделяются двоеточием. Например:

ldap backend обычно выполняет следующие действия для аутентификации пользователя

  • анонимное соединение (при загрузке plugin'а)
  • получение DN для фильтрации = username
  • аутентификация на ldap сервере
  • рассоединение

если четвёртый шаг проходит без ошибок, то пользователь считается авторизированным

Совет: Для создания файлов htpasswd и htdigest Вы можете воспользоваться утилитами, идущими в составе пакета apache или установить apache-tools AUR из AUR.

Чтобы сгенерировать файл htpasswd введите команду:

Чтобы сгенерировать файл htdigest введите команду:

Пример конфигурации

Кодировка по умолчанию

Чтобы установить кодировку для статических файлов, нужно добавить charset=utf-8 в директиве mimetype.assign. Например:

Важно: Для файлов, указанных в директиве ssi.extension, добавление charset=utf-8 в mimetype.assign не работает. Единственный способ указать кодировку, это добавить в секцию <head> shtml файла строку:

Кодировка для листинга каталогов устанавливается директивой:

Кодировка для php файлов устанавливается в файле /etc/php/php.ini :

Проксирование

Пример конфигурации при использовании виртуальных хостов:

Можно также перенапрвлять только скрипты с определённым расширением:

В качестве альтернативы можно использовать условие $HTTP["url"]:

Для распределения нагрузки можно использовать следующие настройки:

Доступны следующие типы балансинга:

  • fair - запрос обрабатывается менее нагруженным сервером
  • round-robin - запросы обрабатывают сервера по очереди
  • hash - гарантировано один и тот же uri будет обрабатываться конкретным сервером

Производительность

Отключение Keep-Alive может помочь вашему серверу, если вы страдаете от большого количества дескрипторов файлов. Значения по умолчанию:

Если сервер обрабатывает несколько соединений сразу под высокой нагрузкой (предположим, 500 соединений одновременно в течение 24 часов), вы можете столкнуться с проблемой нехватки дескрипторов файлов

Это позволит высвободить соединения ранее, и освободит дескриптор файлов без вредные потери производительности.

Отключение Keep-Alive полностью является крайним случаем, если вы все еще хватает файловых дескрипторов:

Обработчик событий

Для Linux с ядром 2.6 и выше рекомендуется следующее значение:

Значение по умолчанию: poll (для Unix систем).

Обработчик сетевых соединений

  • linux-sendfile рекомендуется для маленьких файлов.
  • writev рекомендуется для очень больших файлов.

Максимальное количество соединений

Узнать ограничение дескрипторов файлов в вашей системе можно с помощью команды:

Если у вас сайт с большим трафиком, вы можете увеличить это ограничение:

Примеры настроек для различных CMS

phpMyAdmin

Устанавливаем необходимые пакеты:

Настройка поддержки php описана выше.

Раскоментируем следующие директивы в /etc/php/php.ini :

Также убедитесь, что директории phpmyadmin указаны в директиве open_basedir в /etc/php/php.ini

Если вы хотите, чтобы phpMyAdmin был доступен только по защищённому протоколу добавьте следюущие настройки:

Вы также можете ограничить доступ к phpMyAdmin для определённых IP адресов:

Mediawiki

Устанавливаем необходимые пакеты:

Настройка поддержки php описана выше. УБедитесь, что необходимые директории перечислены в директиве open_basedir в /etc/php/php.ini

Задаём пароль для учётной записи root MySQL:

Создаём базу данных для wiki:

Создаём пользователя для новой базы:

  • $ - пароль root MySQL.
  • $ - имя пользователя базы данных wiki.
  • $ - пароль пользователя базы данныз wiki.
Совет: Тоже самое Вы можете проделать через web-интерфейс phpMyAdmin. Совет: Для получения коротких URL в /usr/share/webapps/mediawiki/LocalSettings.php нужно добавить: Совет: Вместо директивы server.error-handler-404 = /wiki/index.php можно использовать следующие правила перезаписи: Совет: Для получения коротких URL в /usr/share/webapps/mediawiki/LocalSettings.php нужно добавить: Совет: Вместо директивы server.error-handler-404 = /index.php можно использовать следующие правила перезаписи:

texvc

Устанавлиаем необходимые пакеты:

Затем в файле /usr/share/webapps/mediawiki/LocalSettings.php добавляем:

Если MediaWiki Установлена в папку wiki, то конфиг будет выглядеть следующим образом:

Drupal

УБедитесь, что необходимые директории перечислены в директиве open_basedir в /etc/php/php.ini

Вариант 1: server.error-handler-404

Вариант 2: mod_rewrite

Читайте также: