For our business web application i needed to write calender objects into an exchange calender but struggled from the beginning.
I'm using the php-ews library. The problem was a http 401 error which says Unauthorized.
A lot of internet research led me to an curl issue. Basically it's an version issue as ms exchange is using NTLMv2 what wont work with v1 which commonly linux installed curl versions are using.
The only solution is to manually compile and install the latest curl version which is at the time 7.25, available here.
I've found an great article by ityndall http://blog.ianty.com/ubuntu/exchange-w ... and-linux/ where he describes the installation process
1. mkdir curlbuild && cd curlbuild
2. Pull the latest copy from http://curl.haxx.se/dlwiz/?type=source&os=-
3. tar -zxvf curl-7.25.0.tar.gz
4. cd curl-7.25.0
5. Install OpenSSL dev
– Redhat yum install openssl-devel
– Ubuntu apt-get install libcurl4-openssl-dev
6. ./configure -with-ssl
8. make install
9. Remove old link
– Redhat rm /usr/lib/libcurl.so.4
– Ubuntu rm /usr/lib/i386-linux-gnu/libcurl.so.4 OR rm /usr/lib/libcurl.so.4
10. Create new link
– Redhat ln -s /usr/local/lib/libcurl.so.4.2.0 /usr/lib/libcurl.so.4
– Ubuntu ln -s /usr/local/lib/libcurl.so.4.2.0 /usr/lib/i386-linux-gnu/libcurl.so.4 OR ln -s /usr/local/lib/libcurl.so.4.2.0 /usr/lib/libcurl.so.4
11. Check version, should be the newly installed version
– PHP $version = curl_version();
– Curl curl -V
12. Remove/delete curlbuild install directory