diff --git a/roles/lockss-config-frontend/tasks/main.yml b/roles/lockss-config-frontend/tasks/main.yml index a7fb40c9fae834a8bcc696eb3f41e950793b9535..aea10c84057d51373fbe55a0f6e5faf4786d86d3 100644 --- a/roles/lockss-config-frontend/tasks/main.yml +++ b/roles/lockss-config-frontend/tasks/main.yml @@ -7,6 +7,13 @@ owner: root mode: 0644 +- name: Install landing page. + template: + dest: /root/ingress-index.html + src: index.html.j2 + owner: root + mode: 0644 + - name: Add ferm rule. template: dest: /etc/ferm.d/11-in-lockss-frontend.ferm @@ -29,4 +36,5 @@ -p 80:80 --network host -v /root/ingress-httpd.conf:/usr/local/apache2/conf/httpd.conf + -v /root/ingress-index.html:/usr/local/apache2/htdocs/index.html httpd:2.4 diff --git a/roles/lockss-config-frontend/templates/httpd.conf.j2 b/roles/lockss-config-frontend/templates/httpd.conf.j2 index 72bdb00bab338acb05e79850debeed9eb24ba891..98d34327a37837ed22a4cf51d3d3e46aebd5cf93 100644 --- a/roles/lockss-config-frontend/templates/httpd.conf.j2 +++ b/roles/lockss-config-frontend/templates/httpd.conf.j2 @@ -83,13 +83,16 @@ SSLRandomSeed startup builtin SSLRandomSeed connect builtin </IfModule> -RedirectMatch ^/$ /{{ lockss_frontend_default_backend }}/ - LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_http_module modules/mod_proxy_http.so ProxyRequests off + +LoadModule rewrite_module modules/mod_rewrite.so +RewriteEngine on + {% for b in lockss_frontend_backends %} ProxyPass /{{ b.name }}/ http://{{ lockss_hostname }}:{{ b.port }}/ +RewriteRule ^/{{ b.name }}$ /{{ b.name }}/ [R] {% endfor %} LoadModule proxy_html_module modules/mod_proxy_html.so diff --git a/roles/lockss-config-frontend/vars/main.yml b/roles/lockss-config-frontend/vars/main.yml index 39b8379ba26de4769806a5a342ac562e14c34da1..ee029e7c0e0e71f8c6a9529f55a693f6593d9a27 100644 --- a/roles/lockss-config-frontend/vars/main.yml +++ b/roles/lockss-config-frontend/vars/main.yml @@ -2,25 +2,35 @@ lockss_frontend_backends: - name: config + memo: Configuration service port: 24621 - name: api/config + memo: Configuration service API port: 24620 - name: crawler + memo: Cralwer service port: 24631 - name: api/crawler + memo: Crawler service API port: 24630 - name: metadata-extraction + memo: Metadata extraction port: 24641 - name: api/metadata-extraction + memo: Metadata extraction API port: 24640 - name: metadata-query + memo: Metadata query port: 24651 - name: api/metadata-query + memo: Metadata query API port: 24650 - name: api/repo + memo: Repository API port: 24610 - name: pywb + memo: Python Wayback Machine port: 8080 - name: solr + memo: Solr console port: 8983 -lockss_frontend_default_backend: config