I tried restarting service (seafile, apache2 and shibboleth in all possible combinations), rebooting server and nothing helped. Currently I’m back to fastcgi because there’s quite a few people using seafile. However, I’ve kept configurations:
apache2:
RewriteEngine On
ProxyPreserveHost On
<Location /media>
ProxyPass !
Require all granted
</Location>
# seafile
ProxyPass /seafhttp http://127.0.0.1:8082
ProxyPassReverse /seafhttp http://127.0.0.1:8082
RewriteRule ^/seafhttp - [QSA,L]
# seahub
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
ProxyPass / http://127.0.0.1:8000/
ProxyPassReverse / http://127.0.0.1:8000/
<Location /Shibboleth.sso>
SetHandler shib
AuthType shibboleth
ShibRequestSetting requireSession 1
ShibRequestSetting applicationId default
require shib-session
</Location>
<Location /api2>
AuthType None
Require all granted
Allow from all
satisfy any
</Location>
<Location /shib-login>
AuthType shibboleth
ShibRequestSetting requireSession true
ShibUseHeaders On
Require valid-user
ShibUseHeaders On
</Location>
seahub_settings.py:
EXTRA_AUTHENTICATION_BACKENDS = (
'shibboleth.backends.ShibbolethRemoteUserBackend',
)
EXTRA_MIDDLEWARE_CLASSES = (
'shibboleth.middleware.ShibbolethRemoteUserMiddleware',
)
SHIBBOLETH_ATTRIBUTE_MAP = {
"HTTP_EPPN": (True, "username"),
}
#SHIBBOLETH_USER_HEADER = 'HTTP_REMOTE_USER'
ENABLE_SHIB_LOGIN = True
SITE_ROOT = '/'
SITE_TITLE = 'Seafile'
ENABLE_SIGNUP = True
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': '127.0.0.1:11211',
}
}
SESSION_COOKIE_AGE = 60 * 60 * 8
SESSION_EXPIRE_AT_BROWSER_CLOSE = True
ENABLE_REPO_HISTORY_SETTING = True
USE_PDFJS = True
FILE_PREVIEW_MAX_SIZE = 50 * 1024 * 1024
CLOUD_MODE = False
ENABLE_GLOBAL_ADDRESSBOOK = True