2009-01-08 54 views
0

我們已經有了一個用於身份驗證的apache模塊。如果用戶能夠進行身份驗證,則REMOTE_USER環境變量將被設置爲其用戶名,可用於訪問任何CGI。如何通過Apache將結構化數據傳遞給我的(F)CGI?

我想添加一個功能/模塊,以便我們可以從LDAP數據源獲取關於該用戶的其他信息,並使其可用於CGI和FCGI應用程序。

因爲我知道我們可以將信息放入環境中,所以將更復雜的數據結構(如JSON)存儲在環境變量中是否合適?這對我來說似乎很笨重。有沒有更好的方法來做到這一點?

如果它是語言相關的,那麼我對Perl最感興趣,但如果我可以將這些數據提供給任何類型的CGI或FCGI應用程序,那將是最好的。我們在RHEL 5.0上使用Apache 2.2(啓用了SELinux)。

回答

1

如果您需要使用CGI,環境變量似乎是唯一的選擇(使用mod_perl,您可以訪問Apache的內部數據結構)。

如果數據對於環境來說太大,您可以創建一個臨時文件並僅傳遞文件名。您也可以將這些信息存儲在數據庫中。在這兩種情況下,您可能需要擔心清理臨時數據以及與併發訪問有關的競爭狀況。

如果您已經擁有持久的服務器端會話數據(會話文件或目錄或共享內存段),您可能希望將其放在那裏。

相關問題