Wir haben eine Apache 2.2-Installation mit dieser Konfiguration auf einem Ubuntu 12.04:
cat /etc/apache2/sites-enabled/000-default
<VirtualHost *:443>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
AuthType Basic
AuthName "Please provide USERNAME AND PASSWORD!"
AuthBasicProvider ldap
Order allow,deny
Allow from all
AuthLDAPURL "ldap://foo.com/c=uk,ou=bar,o=foo.com?mail"
Require valid-user
Require ldap-attribute dept=4F4623
Require ldap-attribute emailAddress=someone@somewhere.com
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel info
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/apache.crt
SSLCertificateKeyFile /etc/apache2/ssl/apache.key
</VirtualHost>
Es funktioniert hervorragend mit LDAP-Authentifizierung! Wir haben ldap-utils, php5, apache2.2-common.
Frage:
Wie können wir eine Seite erstellen, zum Beispiel:
somedomain.com/selectorpage.html
leitet den angemeldeten Benutzer basierend auf seinem Benutzernamen auf eine andere Seite weiter?
Wenn also ein XY-Benutzer die "selectorpage.html" besucht, wird diese sofort auf die Seite XY.html umgeleitet. Wenn ein AB-Benutzer die "selectorpage.html" besucht, wird diese sofort auf die Seite AB.html umgeleitet. Oder gibt es dafür Apache-Weiterleitungen?
REMOTE_USER
Variable auf den angemeldeten Benutzer ( AuthLDAPRemoteUserAttribute könnte helfen) und verwenden Sie dannmod_rewrite
zum Umleiten: Verwenden Sie eine BedingungRewriteCond %{REMOTE_USER} (.*)
, um den Benutzernamen abzurufen, und leiten Sie sie anschließend mithilfe einer Umschreibungsregel für die Rückreferenzierung um das :RewriteRule .* /%1.html
, wobei% 1 durch den Benutzernamen ersetzt wird.Antworten:
Wenn Sie diesen Beitrag mit Ihren Informationen kombinieren , empfehlen wir Ihnen, eine PHP-Seite anstelle einer HTML-Seite anstelle von Selector page.html zu verwenden und zu verwenden
in der selector_page.php mit entweder:
o.ä
(Möglicherweise müssen Sie eine mod_rewrite-Regel ausführen, um die selectorpage.html in selectorpage.php zu ändern, wenn es sich um einen externen Link handelt und nicht unter Ihrer Kontrolle steht. Es ist jedoch besser, den Link so zu ändern, dass er auf die PHP-Seite verweist, wenn dies nicht der Fall ist.)
quelle