We hebben hier op de server 2 instanties van apache draaien (1 productie, andere voor intern gebruik), op twee verschillende poorten, uiteraard. De productie-apache is apache2, de andere is apache-ssl. Beide komen uit het main repo van Debian Etch.
Op een gegeven moment merkten we dat ldap kapot was, dus keken we even of deze het op onze interne apache wel deed (wel dus). Na een hele tijd puzzelen kwamen we erachter dat onze productie-apache wijzigingen in ldap.conf helemaal niet leest. Bijvoorbeeld: Als we ldap.conf verplaatsten en beide apache's herstarten, begint de interne apache meteen te zeuren, terwijl de productie-apache vrolijk doorgaat met de oude instellingen van ldap.conf (kunnen we zien aan de debug ouput).
Het gaat in beide gevallen om een dergerlijke constructie:
Dit hoort eruit te komen:
Maar in plaats daarvan krijgen we:
Ik ben het spoor inmiddels helemaal bijster. Heeft iemand een idee waarom ldap.conf niet fatsoenlijk wordt ingelezen?
Op een gegeven moment merkten we dat ldap kapot was, dus keken we even of deze het op onze interne apache wel deed (wel dus). Na een hele tijd puzzelen kwamen we erachter dat onze productie-apache wijzigingen in ldap.conf helemaal niet leest. Bijvoorbeeld: Als we ldap.conf verplaatsten en beide apache's herstarten, begint de interne apache meteen te zeuren, terwijl de productie-apache vrolijk doorgaat met de oude instellingen van ldap.conf (kunnen we zien aan de debug ouput).
Het gaat in beide gevallen om een dergerlijke constructie:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
| <?php // Set base and filter $uid = "a_valid_uid"; $base = "o=bla bla lba,c=NL"; // Even verborgen, maar deze is correct $filter = "(&(objectclass=person)(uid=$uid))"; ldap_set_option(NULL, LDAP_OPT_DEBUG_LEVEL, 7); // Connect $ldap = ldap_connect(); //ldap_get_option($ldap, LDAP_OPT_HOST_NAME, $host_ldap); //echo 'ldap server: ' . $host_ldap; // Bind $res = ldap_bind($ldap); // Search $res = ldap_search($ldap, $base, $filter); $values = ldap_get_entries($ldap, $res); $dn = $values[0]["dn"]; // Echo results echo $dn; // Unbind ldap_unbind($ldap); ?> |
Dit hoort eruit te komen:
code:
1
| mail=abc@domein.tld,o=bla bla bla,c=nl |
Maar in plaats daarvan krijgen we:
code:
1
2
3
4
5
| Warning: ldap_bind() [function.ldap-bind]: Unable to bind to server: Can't contact LDAP server in /home/.../html/ldap.php on line 21 Warning: ldap_search() [function.ldap-search]: Search: Can't contact LDAP server in /home/.../html/ldap.php on line 24 Warning: ldap_get_entries(): supplied argument is not a valid ldap result resource in /home/.../html/ldap.php on line 25 |
Ik ben het spoor inmiddels helemaal bijster. Heeft iemand een idee waarom ldap.conf niet fatsoenlijk wordt ingelezen?
[ Voor 16% gewijzigd door HarmoniousVibe op 25-06-2007 21:03 ]
12 × LG 330Wp (Enphase) | Daikin FTXM-N 3,5+2,0+2,0kW | Panasonic KIT-WC03J3E5 3kW