diff --git a/salt/profile/wiki/files/apache-vhost-files.conf b/salt/profile/wiki/files/apache-vhost-files.conf
new file mode 100644
index 0000000..7a0ee79
--- /dev/null
+++ b/salt/profile/wiki/files/apache-vhost-files.conf
@@ -0,0 +1,43 @@
+
+ ServerName files.opensuse.org
+
+ UseCanonicalName Off
+
+ AADefaultHatName vhost_files
+
+ DocumentRoot /srv/www/files.opensuse.org/public
+
+
+ Require all granted
+
+
+ # redirect everything that was historically available as symlink to the official location
+ RedirectPermanent /opensuse/cn/ https://cn.opensuse.org/images/
+ RedirectPermanent /opensuse/cs/ https://cs.opensuse.org/images/
+ RedirectPermanent /opensuse/de/ https://de.opensuse.org/images/
+ RedirectPermanent /opensuse/el/ https://el.opensuse.org/images/
+ RedirectPermanent /opensuse/en/ https://en.opensuse.org/images/
+ RedirectPermanent /opensuse/es/ https://es.opensuse.org/images/
+ RedirectPermanent /opensuse/fi/ https://fi.opensuse.org/images/
+ RedirectPermanent /opensuse/fr/ https://fr.opensuse.org/images/
+ RedirectPermanent /opensuse/hu/ https://hu.opensuse.org/images/
+ RedirectPermanent /opensuse/is/ https://is.opensuse.org/images/
+ RedirectPermanent /opensuse/it/ https://it.opensuse.org/images/
+ RedirectPermanent /opensuse/ja/ https://ja.opensuse.org/images/
+ RedirectPermanent /opensuse/nl/ https://nl.opensuse.org/images/
+ RedirectPermanent /opensuse/old-en/ https://old-en.opensuse.org/images/
+ RedirectPermanent /opensuse/pl/ https://pl.opensuse.org/images/
+ RedirectPermanent /opensuse/pt/ https://pt.opensuse.org/images/
+ RedirectPermanent /opensuse/ru/ https://ru.opensuse.org/images/
+ RedirectPermanent /opensuse/sv/ https://sv.opensuse.org/images/
+ RedirectPermanent /opensuse/tr/ https://tr.opensuse.org/images/
+ RedirectPermanent /opensuse/vi/ https://vi.opensuse.org/images/
+ RedirectPermanent /opensuse/zh/ https://zh.opensuse.org/images/
+ RedirectPermanent /opensuse/zh_tw/ https://zh_tw.opensuse.org/images/
+
+ LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" \"%{X-Forwarded-For}i\"" combinedproxy
+ CustomLog "/var/log/apache2/files-access_log" combinedproxy
+
+
+
+# vim:ft=apache
diff --git a/salt/profile/wiki/files/httpd2-prefork.apparmor b/salt/profile/wiki/files/httpd2-prefork.apparmor
index a2094ba..7eb6727 100644
--- a/salt/profile/wiki/files/httpd2-prefork.apparmor
+++ b/salt/profile/wiki/files/httpd2-prefork.apparmor
@@ -109,6 +109,17 @@ profile httpd2-prefork /usr/sbin/httpd{,2}-prefork flags=(complain,attach_discon
}
+ ^vhost_files flags=(complain,attach_disconnected) {
+ #include
+
+ /var/log/apache2/files-access_log w,
+ /var/log/apache2/files-access_log-20[12][0-9][01][0-9][0-3][0-9] w,
+ /var/log/apache2/error_log w,
+
+ /srv/www/files.opensuse.org/public/ r,
+ /srv/www/files.opensuse.org/public/** r,
+ }
+
# {% for wiki in pillar['mediawiki_1_27']['wikis'] %}
^vhost_{{wiki}}wiki flags=(complain,attach_disconnected) {
#include
diff --git a/salt/profile/wiki/init.sls b/salt/profile/wiki/init.sls
index f3ec8c2..5a3a55c 100644
--- a/salt/profile/wiki/init.sls
+++ b/salt/profile/wiki/init.sls
@@ -3,3 +3,4 @@ include:
- profile.wiki.memcached
- profile.wiki.postfix
- profile.wiki.docroot
+ - profile.wiki.vhost_files
diff --git a/salt/profile/wiki/vhost_files.sls b/salt/profile/wiki/vhost_files.sls
new file mode 100644
index 0000000..78267bb
--- /dev/null
+++ b/salt/profile/wiki/vhost_files.sls
@@ -0,0 +1,16 @@
+#
+# files.opensuse.org - several redirects and ~600 MB real, old files
+#
+
+/srv/www/files.opensuse.org/public:
+ file.directory:
+ - user: root
+ - group: root
+ - mode: 755
+ - makedirs: True
+
+/etc/apache2/vhosts.d/files.opensuse.org.conf:
+ file.managed:
+ - listen_in:
+ - service: apache2
+ - source: salt://profile/wiki/files/apache-vhost-files.conf