Поиск по сайту:

Как установить «ДокуВики» на Ubuntu 20.04 LTS


Это руководство существует для этих версий ОС

  • Ubuntu 18.04 (Бионический бобер)

На этой странице

  1. Предпосылки
  2. Обновите системные пакеты
  3. Установите Apache и PHP
  4. Загрузить «Докувики»
  5. Настройка Apache для «ДокуВики»
  6. Защитите «ДокуВики» с помощью Lets Encrypt SSL
  7. Доступ к «Докувики»
  8. Настройка автоматического продления SSL-сертификата Lets Encrypt
  9. Заключение

«ДокуВики» — это бесплатное и наиболее универсальное вики-приложение с открытым исходным кодом, написанное на PHP. Он простой и легкий, использует простой формат файла для хранения своих данных, поэтому не требует базы данных. Он известен своим чистым и удобочитаемым синтаксисом и позволяет легко масштабировать и оптимизировать, используя множество дополнительных функций. Вы можете создавать свои личные или бизнес-сайты, просто загружая их содержимое на свой сервер. Он поставляется с богатым набором функций, включая поддержку WYSIWYG, оптимизацию для SEO, встроенные элементы управления доступом и соединители аутентификации, гибкую структуру CSS и многое другое.

В этом руководстве мы покажем вам, как установить «ДокуВики» с SSL-сертификатом Apache и Letsencrypt на Ubuntu 20.04.

Предпосылки

  • Сервер под управлением Ubuntu 20.04.
  • Действительное доменное имя, указывающее на ваш сервер.
  • На вашем сервере настроен пароль root.

Обновите системные пакеты

Перед запуском рекомендуется обновить системные пакеты до последней версии. Вы можете сделать это с помощью следующей команды:

apt-get update -y
apt-get upgrade -y

Как только ваша система будет обновлена, перезапустите ее, чтобы изменения вступили в силу.

Установите Апач и PHP

«Докувики» написана на PHP и работает на веб-сервере. Поэтому вам нужно будет установить веб-сервер Apache, PHP и другие библиотеки PHP в вашу систему. Вы можете установить их все, выполнив следующую команду:

apt-get install apache2 php php-gd php-xml php-json -y

После установки всех пакетов запустите службу Apache и включите ее запуск при загрузке с помощью следующей команды:

systemctl start apache2
systemctl enable apache2

Как только вы закончите, вы можете перейти к следующему шагу.

Скачать «Докувики»

Сначала перейдите на официальную страницу загрузки «ДокуВики» и загрузите последнюю версию «ДокуВики» с помощью следующей команды:

wget https://download.dokuwiki.org/src/dokuwiki/dokuwiki-rc.tgz

После завершения загрузки создайте каталог «ДокуВики» внутри корневого веб-каталога Apache и извлеките «ДокуВики»:

mkdir /var/www/html/dokuwiki
tar -xvzf dokuwiki-rc.tgz -C /var/www/html/dokuwiki/ --strip-components=1

Затем скопируйте образец файла .htaccess с помощью следующей команды:

cp /var/www/html/dokuwiki/.htaccess{.dist,}

Затем измените владельца dokuwiki на www-data:

chown -R www-data:www-data /var/www/html/dokuwiki

Как только вы закончите, вы можете перейти к следующему шагу.

Настроить Apache для «ДокуВики»

Затем создайте файл конфигурации виртуального хоста Apache для обслуживания веб-сайта «ДокуВики»:

nano /etc/apache2/sites-available/dokuwiki.conf

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

<VirtualHost *:80>
        ServerName    dokuwiki.linuxbuz.com      
        DocumentRoot  /var/www/html/dokuwiki

        <Directory ~ "/var/www/html/dokuwiki/(bin/|conf/|data/|inc/)">
            <IfModule mod_authz_core.c>
                AllowOverride All
                Require all denied
            </IfModule>
            <IfModule !mod_authz_core.c>
                Order allow,deny
                Deny from all
            </IfModule>
        </Directory>

        ErrorLog   /var/log/apache2/dokuwiki_error.log
        CustomLog  /var/log/apache2/dokuwiki_access.log combined
</VirtualHost>

Сохраните и закройте файл, когда закончите. Затем включите сайт «Докувики» и перезагрузите службу Apache с помощью следующей команды:

a2ensite dokuwiki.conf
systemctl reload apache2

На этом этапе веб-сервер Apache настроен для обслуживания сайта «ДокуВики». Теперь вы можете приступить к установке Lets Encrypt SSL на свой сайт.

Защитите «ДокуВики» с помощью Lets Encrypt SSL

Во-первых, вам нужно будет установить клиент Certbot в вашей системе. Certbot — это простой в использовании клиент, который извлекает сертификат из Lets Encrypt — открытого центра сертификации, запущенного EFF, Mozilla и другими, — и развертывает его на веб-сервере. Используя клиент Certbot Lets Encrypt, вы можете легко загрузить, установить и обновить сертификат SSL для своего домена.

Вы можете установить Certbot с помощью следующей команды:

apt-get install certbot python3-certbot-apache -y

После успешной установки клиента Certbot выполните следующую команду, чтобы установить Lets Encrypt SSL для вашего веб-сайта:

certbot --apache -d dokuwiki.linuxbuz.com

Вам будет предложено указать действующий адрес электронной почты и принять условия обслуживания, как показано ниже:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): 

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y

Obtaining a new certificate
Performing the following challenges:
http-01 challenge for dokuwiki.linuxbuz.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/dokuwiki-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/dokuwiki-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/dokuwiki-le-ssl.conf

Затем выберите, следует ли перенаправлять HTTP-трафик на HTTPS или настроить Nginx для перенаправления всего трафика на безопасный доступ по HTTPS, как показано в следующем выводе:

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Введите 2 и нажмите Enter, чтобы начать процесс. После завершения установки вы должны получить следующий вывод:

Enabled Apache rewrite module
Redirecting vhost in /etc/apache2/sites-enabled/dokuwiki.conf to ssl vhost in /etc/apache2/sites-available/dokuwiki-le-ssl.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://dokuwiki.linuxbuz.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=dokuwiki.linuxbuz.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/dokuwiki.linuxbuz.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/dokuwiki.linuxbuz.com/privkey.pem
   Your cert will expire on 2020-09-05. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot again
   with the "certonly" option. To non-interactively renew *all* of
   your certificates, run "certbot renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

На данный момент ваш сайт «Докувики» защищен с помощью Lets Encrypt SSL. Теперь вы можете безопасно получить доступ к своему сайту с помощью протокола HTTPS.

Доступ к «Докувики»

Теперь откройте веб-браузер и введите URL-адрес https://dokuwiki.linuxbuz.com/install.php. Вы должны увидеть экран установки «ДокуВики»:

Укажите свое имя вики, имя пользователя администратора, пароль, адрес электронной почты, выберите свою политику и нажмите кнопку «Сохранить». Вы будете перенаправлены на следующую страницу:

Нажмите на \Вы новая DokuWiki\. Вы должны увидеть следующий экран:

Нажмите кнопку «Войти». Вы будете перенаправлены на экран входа в «ДокуВики», как показано ниже:

Введите имя пользователя и пароль администратора и нажмите кнопку «Войти». Вы должны увидеть панель управления «ДокуВики» на следующем экране:

Настройка автоматического продления SSL-сертификата Lets Encrypt

По умолчанию сертификаты Let’s Encrypt действительны в течение 90 дней. Итак, вам нужно будет настроить задание cron для автоматического обновления сертификата SSL. Безопасно создавать задание cron, которое выполняется каждую неделю или даже каждый день.

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

certbot renew --dry-run

Вы можете настроить задание cron для автоматического обновления SSL-сертификата каждый день в 10:00, отредактировав следующий файл:

crontab -e

Добавьте следующую строку:

00 10 * * *   root /usr/bin/certbot renew >/dev/null 2>&1

Сохраните и закройте файл, когда закончите.

Заключение

Поздравляем! вы успешно установили «ДокуВики» и защитили ее с помощью Lets Encrypt SSL в Ubuntu 20.04. Вы также можете расширить свою «ДокуВики», используя темы, плагины и шаблоны. Не стесняйтесь спрашивать меня, если у вас есть какие-либо вопросы.