2012-02-01 4 views
0

ウェブサイトのフロントページが表示される前に、ユーザーがLDAP経由でログインするようにしたいサイトがあります。これは一般的なWebページでうまく動作しますが、apache2上の乗客を走らせるレールサイトでは動作しません。私は、乗客がDirectoryコマンドを尊重しない(または、その指示に達する前にピックアップする)ので、これがいくつかの参照を見てきました。これを実現させる方法はありますか、代わりにサイトに念入りに追加する必要がありますか?ルビーレールパッセンジャーapache2 httpd.confの基本LDAP認証を使用

<VirtualHost *:80> 
    ServerName test.example.com 
    DocumentRoot "/www/software/rails_site/current/public" 
    ErrorLog "/www/logs/software/rails_site/error_log" 
    CustomLog "/www/logs/software/rails_site/access_log" common 
    DirectoryIndex index.html 
    RailsEnv production 

    <Directory "/www/software/rails_site/current/public"> 
     AuthType Basic 
     AuthName "Secure portal" 
     AuthBasicProvider ldap 
     AuthzLDAPAuthoritative on 
     AuthLDAPURL "info" 
     AuthLDAPBindPassword "pass" 
     require ldap-user usernames 
     Order deny,allow 
     Satisfy Any 
    </Directory> 
</VirtualHost> 

上記は、最初にサイトを読み込もうとしたときにサイトの読み込みや挑戦を妨げるものではありません。

+0

私はdevise_ldap_authenticatable宝石を使用して多くの成功を持っていました。これは、apache2の設定ファイルの中でどんな厄介なことも必要としません。 –

答えて

1

ディレクトリの代わりに場所に認証ディレクティブを配置し、受信URIによって最初にトリガされるようにしてください。明らかにPassengerには、Directoryディレクティブに関連付けられた操作の順序があります。

この古い投稿は可能あなたが何をしようとして(少なくともにするために使用)ことを確認:

http://groups.google.com/group/phusion-passenger/browse_thread/thread/bb0ccee6b4a45bc0/429a34fb66dbde6d

+0

情報ありがとうございます。 Locationディレクティブを使用して、乗客3.0.9およびhttpd 2.2.17を使用しても動作しないようです。 –