После установки XWiki поднимается на порту 8080, к тому же в директории /xwiki. Это не всегда удобно, да что там, совсем неудобно. Установим nginx, настроим на нём проксирование, чтобы xwiki работала на 80 порту без лишних директорий в пути и на HTTPS.
Не буду здесь рассматривать процесс получения или генерации SSL ключей, будем считать, что они у нас уже есть.
Окружение
XWiki 12.2 работает на Ubuntu 18.04 LTS.
XWiki — установка на Ubuntu 18.04 LTS
Установка и настройка Nginx
Установим nginx:
apt-get install nginx
Создаём файл конфигурации для XWiki:
cd /etc/nginx/conf.d
touch xwiki.conf
Содержимое файла:
upstream tomcat {
server 127.0.0.1:8080 fail_timeout=0;
keepalive 64;
}
server {
listen 80;
listen 443 ssl;
server_name wiki.ev.local wiki02.ev.local ;
charset utf-8;
ssl_certificate /etc/nginx/ssl/wiki-cert.pem;
ssl_certificate_key /etc/nginx/ssl/wiki-key.pem;
if ($scheme != "https") {
return 301 https://$host$request_uri;
}
location / {
client_max_body_size 2048M;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass_request_headers on;
proxy_set_header Connection "keep-alive";
proxy_store off;
proxy_headers_hash_max_size 2048;
proxy_pass http://tomcat/;
}
proxy_connect_timeout 36000s;
proxy_read_timeout 36000s;
proxy_send_timeout 36000s;
send_timeout 36000s;
access_log /var/log/nginx_access.log;
error_log /var/log/nginx_error.log;
}
Создаём папку /etc/nginx/ssl для хранения ключей, в ней размещаем файлы ключа и приватного сертификата:
mkdir /etc/nginx/ssl
cd /etc/nginx/ssl
touch wiki00-cert.pem
touch wiki00-key.pem
Содержимое сертификата и ключа копируем в созданные файлы. Перезапускаем nginx:
service nginx restart
Проверяем что 80 порт заработал:
netstat -tan | grep 80
Осталось зайти на сайт и убедиться в том, что XWiki работает на HTTPS и 80 порту.