Question

Accessing Exchange 2003 Using PHP

Asked by: cescentman

I am trying to access an exchange server using PHP to manage contacts and appointments between a web application and the exchange sever, both are on my LAN and not in the public domain. So far with little success.

I have tried the scripts at:-

http://www.troywolf.com/articles/php/exchange_webdav_examples.php

and

http://social.technet.microsoft.com/Forums/en-US/exchangesvrdevelopment/thread/c5748e7b-170b-40e0-89dd-3788766c538f

but I always come up against an authentication error. I would be very grateful if someone could help me resolve this as I'm held up on completing the larger task until I crack it.

This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.

Subscribe now for full access to Experts Exchange and get

Instant Access to this Solution

  • Plus...
  • 30 Day FREE access, no risk, no obligation
  • Collaborate with the world's top tech experts
  • Unlimited access to our exclusive solution database
  • Never be left without tech help again

Subscribe Now

Asked On
2009-09-22 at 23:37:34ID24754016
Tags

Exchange 2003

,

PHP

Topics

Exchange Email Server

,

PHP Scripting Language

Participating Experts
4
Points
500
Comments
68

Trusted by hundreds of thousands everyday for fast, accurate and reliable tech support.

  • "The time we save is the biggest benefit of Experts Exchange to Warner Bros. What could take multiple guys 2 hours or more each to find is accessed in around 15 minutes on Experts Exchange." Mike Kapnisakis, Warner Bros.
  • "Our team likes having a resource that is more secure than just using Google and most experts using this service really know their stuff. It's nice to look here first versus using Google." Dayna Sellner, Lockheed Martin
  • "Anytime that I've been stumped with a problem, 9 out of 10 times Experts Exchange has either the accepted solution or an open discussion of the potential solution to the problem." Kenny Red, eBay Inc.

See what Experts Exchange can do for you.

Got a question?

We've got the answer.

Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.

Screenshot of Experts Exchange Knowledgebase

Need individual assistance?

Our experts are ready to help.

If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.

Screenshot of Experts Exchange Knowledgebase

Want to learn from the best?

Read articles from industry experts.

Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.

Screenshot of an Article

Working on a long term project?

Store your work and research.

Save solutions to your questions, answers you’ve discovered through searching plus helpful articles in your personal knowledgebase for easy future access.

Screenshot of Experts Exchange Knowledgebase

Access the answers to your technology questions today.

Subscribe Now

30-day free trial. Register in 60 seconds.

What Makes Experts Exchange Unique?

Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Trusted by the world's most respected brands.

image of each brand's logo

Faithfully serving IT professionals since 1996.

Experts Exchange Logo

Try it out and discover for yourself.

Subscribe Now

30-day free trial. Register in 60 seconds.

Related Solutions

  1. WebDAV
    Are there PHP classes available that will handle WebDAV on the server-side? My provider doesn't offer DAV and I would like to get it setup. Thanks.
  2. PHP webdav client
    Does anyone know of a way to create a webdav client with PHP? Is this possible? Why or why not? -- John C.
  3. using WebDAV in php
    Hi, totally foreign to php and am wondering if anyone can point me to an example of access webdav interface through php. I'm trying to modify someone's php code to hit a webdav server rather than the local file disk.
  4. PHP, WebDAV and OWA
    Ok, ive been staring at this for too long, time to ask the experts. Im trying to create an appointment in a public calendar on a 2003 exchange server. I get a HTTP/1.1 400 Bad Request upon submitting my XML and I just cant see where im going wrong ps. this is a modified sn...
  5. WEBDAV: How to move a calendar appointment
    Hi, I have an application that creates appointments in exchange using WebDav, which so far is working fine. I now want the application to be able to move existing appointments as well. In my sample app if I supply the same URL but change the dates in the actual WebDav reques...
  6. PHP Appointment Booking
    Hi, I am more in search of advice than an out and out solution here. I want to add a feature in a website in PHP whereby users can book an appointment with the company. Appointment times are every half hour between 9-5, and users should be able to book an appointment on any...

Free Tech Articles

  1. WARNING: 5 Reasons why you should NEVER fix a computer for free.
    It is in our nature to love the puzzle. We are obsessed. The lot of us. We love puzzles. We love the challenge. We thrive on finding the answer. We hate disarray. It bothers us deep in our soul. W...
  2. SCCM OSD Basic troubleshooting
    SCCM 2007 OSD is a fantastic way to deploy operating systems, however, like most things SCCM issues can sometimes be difficult to resolve due to the sheer volume of logs to sift through and the dispe...
  3. Migrate Small Business Server 2003 to Exchange 2010 and Windows 2008 R2
    This guide is intended to provide step by step instructions on how to migrate from Small Business Server 2003 to Windows 2008 R2 with Exchange 2010. For this migration to work you will need the fo...
  4. Create a Win7 Gadget
    This article shows you how to create a simple "Gadget" -- a sort of mini-application supported by Windows 7 and Vista. Gadgets can be dropped anywhere on the desktop to provide instant information, ...
  5. Outlook continually prompting for username and password
    There have been a lot of questions recently regarding Outlook prompting for a username and password whilst using Exchange 2007. There are a few reasons why this would happen and I will try to cover t...
  6. Backup Exchange 2010 Information Store using Windows Backup
    There seems to be quite a lot of confusion around the ability to backup Exchange 2010 using the built in Windows Backup feature. This stems from the omission of this feature prior to Exchange 2007 s...

Cloud Class Webinars

  1. Avoiding Bugs in Microsoft Access
    Alison Balter takes and in-depth look at avoiding bugs in Access. In this webinar you will learn about using the immediate window to debug your applications, invoking the debugger, using breakpoints to troubleshoot, stepping through code, setting the next statement to execute, ...
  2. Top 10 Best New Features in Visio 2010
    Scott Helmers gives live demonstrations of the top 10 new features in Visio 2010. This webinar will teach you how to create compelling diagrams by adding shapes to the page with a single click, linking the shapes in a diagram to data in Excel (or SQL Server, or SharePoint), ...
  3. IT Consultant Business Secrets Revealed
    Michael Munger, Experts Exchange tech pro and IT consultant, pulls back the curtain on his very successful businesses and answers question on every IT consultant and business owner should know about. He shares secrets on what he did to solve the 5 most common problems in IT, ...
  4. Disaster Recovery and Business Continuity
    Quest CTO, Mike Billon, gives an overview of the steps involved in building a dunamic disaster recovery plan. Through case studies and an examination of software/hardware tooles for monitoring and testing, you'll gain a better understandin of where you are, where you want ...
  5. Organize Your Visio Diagrams with Containers and Lists
    Scott Helmers uses cross functional flowcharts, wireframe diagrams, data graphic legends and seating charts to teach you: how to ustilize all three new structured diagram components in Visio 2010, the best practices for organizeing shapes in previous version of Visio, how to organize ...
  6. How to Us Objects, Properties, Events and Methods in Microsoft Access
    Alison Dalter gives an in-depbth look at objects, properties, events and methods in Microsoft Access. In this webinar you will learn about using the object browser, referring to objects, working with properties and methods, working with object variables, understanding the ...

Join the Community

Give a Little. Get a Lot.

Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.

Join the Community

Answers

 

by: cescentmanPosted on 2009-09-23 at 07:45:01ID: 25403666

I have just come across another reference to this:-

http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/XML/Q_23370733.html

Again I get
"HTTP/1.1 401 Unauthorized
Error: Access is Denied."

 

by: darkstar3dPosted on 2009-09-23 at 14:41:17ID: 25408239

What type of account are you authenticating with?

 

by: cescentmanPosted on 2009-09-23 at 23:39:18ID: 25410553

Not quite sure what you are asking here. The account is an exchange account for a test AD user "Robin-Tester" in the domain. I have confirmed that I can authenticate using OWA with both Firefox and IE. I have tried with various combinations such as "Robin-Tester", "Robin-Tester@domain" and "domain\Robin-Tester".

 

by: RoonaanPosted on 2009-09-24 at 00:51:01ID: 25410872

Slightly offtopic, as this is not a PHP solution:
In a recent project we used an ASP.Net proxy script that used the EWS Managed API from microsoft that wraps the webservices that Outlook web access uses to access Exchange. The proxy just converts REST calls to API calls and works like a charm in reading and writing to calendars from PHP.

 

by: BarthaxPosted on 2009-09-24 at 00:53:20ID: 25410885

Thinking outside the box, older versions of Mac Entourage (Microsoft product) I've worked with connect through WebDav too & they require case-sensitivity for the domain and username as well as the password (of course).   Your "domain\Robin-Tester" is correct format, but is it case-sensitive matching the domain name as presented at the top of the Active Directory Users and Computers tree?

 

by: cescentmanPosted on 2009-09-24 at 01:26:03ID: 25411048

Barthax Interesting call. I have checked it and no it isn't an issue of case. Thanks for posting though.

 

by: cescentmanPosted on 2009-09-24 at 02:12:07ID: 25411264

Roonaan, I'm working very much at the limit of my knowledge on this project. Your post sounded interesting but I have to confess most of it is new to me. I've browsed a bit but doesn't this need exchange 2007?

 

by: RoonaanPosted on 2009-09-24 at 03:53:19ID: 25411835

Yes, sorry. I had to check, but our environment is indeed using an 2007 server. I made a wrong assumption that it was a 2003 one.

 

by: cescentmanPosted on 2009-09-24 at 03:54:00ID: 25411840

OK thanks for trying.

 

by: RQuadlingPosted on 2009-09-24 at 05:40:40ID: 25412620

Depending upon what you want to do, you could use the Outlook Redemption DLL (http://www.dimastr.com/redemption/) via PHP's COM mechanism.

Essentially Outlook Redemption is an interface to allow you to talk to Exchange Server, just like MS Outlook does, but without the security block that various service packs have put in place.

Whilst the examples on the site are NOT in PHP, because it is a COM interface, it is extremely portable.

 

by: cescentmanPosted on 2009-09-24 at 08:31:36ID: 25414411

RQuadling I have no experience using PHPs COM interface. I could have a go but I'm not sure that Outlook Redemption is the way forward. Not understanding the context in which it would be used can you help me by answering this question.

Exchange sits on server1 php would be running on server2, can PHPs COM interface allow me to interface with Exchange using Outlook Redemption?

I have tried to search the Outlook Redemption yahoo group but yahoo has mucked up the group search facility.

 

by: cescentmanPosted on 2009-09-24 at 08:32:34ID: 25414431

Thanks for getting back to me this morning darkstar3d, was that the information you wanted?

 

by: darkstar3dPosted on 2009-09-24 at 08:45:54ID: 25414581

Yes it was. Those examples look like they will work. If the server is using forms based authentication, I don't think they will. I wasn't able to test any of them yet to check for certain.

FBA requires that you query /exchweb/bin/auth/owaauth.dll with the username and password, save the cookie that is returned, and authenticate all further requests with that cookie. curl is one of the better methods of doing that. I'm rusty on PHP, but here is a link that hopefully will get you started. I'm on the road and can't test anything until the weekend.

http://stackoverflow.com/questions/437927/how-do-i-do-this-asp-webdav-fba-authentication-example-in-php

Look at the top rated answer for the code I'm mentioning.

 

by: RQuadlingPosted on 2009-09-24 at 08:59:24ID: 25414775

The way Redemption works is by utilising a windows mail profile.

So, if Outlook can talk to exchange (a good test), then PHP + COM + Outlook Redemption can also.

Outlook needs to be installed on the same server as PHP and Redemption.

Here is a daft example with my output.

Contacts
Contacts
Global Address List
All Address Lists
All Contacts
All Groups
All Rooms
All Users


OK. Not much. But using a TypeLibrary browser, you can see the entire list of facilities with all the parameters and return types.

This was run on a Windows XP SP3 workstation with Outlook 2003 SP3 installed (but not loaded!!!). The Exchange server is a VM running on Windows 2008 in an Sun ESX box somewhere.

<?php
// Suppress reporting of duplicate constants.
ini_set('com.autoregister_verbose', 0);
 
// Create an Outlook Redemption object to read the address lists.
$o_RLists = New COM('Redemption.AddressLists');
 
// Register the typelibrary.
com_load_typelib('AddressLists');
 
// Iterate the list of address books.
for($i_Count = 0 ; $i_Count < $o_RLists->Count ; ++$i_Count)
	{
	echo $o_RLists[$i_Count]->Name, PHP_EOL;
	}

                                              
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:

Select allOpen in new window

 

by: RQuadlingPosted on 2009-09-24 at 09:00:23ID: 25414787

foreach() didn't work as the IAddressLists does not have an enumerable interface. This is the Redemption library and I suspect the same for the Extended MAPI library and NOT PHP's fault.

 

by: cescentmanPosted on 2009-09-25 at 02:41:53ID: 25421322

RQuadling, thanks, I will look into this next week as it offers a different kind of approach. I would prefer to understand why the existing code I'm working with isn't working first. Once I have bot methods working I would be in a position to decide which offers me the best solution.

 

by: cescentmanPosted on 2009-09-25 at 03:01:39ID: 25421415

darkstar3d thanks for the link. I'm going to look it over now I understand the constraints you are under so I will be patient!!. I am grateful for all the help being offered to me. One thought occurs to me. FBA is turned on in exchange but I haven't configured for HTTPS as this is exclusively for internal use and I was reluctant to spend money on a certificate for internal purpose only. Could this be the problem. I have amended the scripts I am trying so they use HTTP not HTTPS but is there a problem with this I'm not appreciating?

 

by: darkstar3dPosted on 2009-09-25 at 06:42:17ID: 25422834

curl can be used to get any data, not just https. You only need to put the cookie into every request sent after that.

 

by: cescentmanPosted on 2009-09-30 at 02:49:19ID: 25456897

Darkstar3d, when I enable Forms Based Authentication in Exchange the following message comes up:-

"Forms Based Authentication requires clients to use a SSL connection. If SSL encryption is not off-loaded to another source, complete the following steps:

-Configure SSL
-Restart the IIS service"

Presumably from what you say above I can ignore this and FBA will be enabled but for HTTP not HTTPS?

 

by: darkstar3dPosted on 2009-09-30 at 05:38:09ID: 25458029

If you had to enable it, it wasn't enabled already. It is not necessary, just more secure and with the results you were getting I was thinking FBA was the cause of it. It is more secure, but if this is internal only, create a self signed certificate. A local certificate authority could also be used.

 

by: cescentmanPosted on 2009-09-30 at 05:57:54ID: 25458276

Well FBA was enabled from the original install of exchange. I have tried removing it to see if that was the issue and this came up when I tried to add it again. Not entirely sure what you mean here. Are you saying:-

1. It will work without enabling SSL on IIS

or

2. I need to enable SSL on IIS for it to work and can just use a self signed certificate.

Currently none of the scripts I try work with or without it. I'm grasping at straws I think.

 

by: darkstar3dPosted on 2009-10-01 at 01:59:56ID: 25466927

Is Webdav disabled perhaps? Not sure where to check just for Exchange but I would check in IIS manager, web service extensions, and see if WebDAV is Allowed.

 

by: cescentmanPosted on 2009-10-01 at 03:09:06ID: 25467193

As far as I can see WEBDAV is enabled (see the attached jpegs). Given that I have tried a number of different scripts some using cURL some using Troy Wolf's HTTP class I can't help thinking that this is to do with exchange. One option to progress this is, if you are up for it, to set up a remote session for you to directly look at the config. That's within the rules of EEX as long as I commit to writing up the solution afterwards. I fully understand if this is not acceptable to you as your support to me is only voluntary.

 

by: cescentmanPosted on 2009-10-01 at 04:14:44ID: 25467480

An alternative or additional approach to this could be to try access via ASP first. This might at least identify the location of the problem. I've had a quick cast around and there are dozens of scripts to try from. Do you have an suggestions as to any?

 

by: darkstar3dPosted on 2009-10-01 at 08:11:36ID: 25469566

Remote session currently impossible for me as I only have my corporate laptop with me.

For examples, I always look to see what Glen Scales has first! :) http://gsexdev.blogspot.com/2005/04/aspnet-and-exchange-tips-and-samples.html

 

by: cescentmanPosted on 2009-10-01 at 08:12:58ID: 25469587

OK I'll pursue that and get back to you. Could be a few days as other things are crowding me. I am very grateful for the support.

 

by: darkstar3dPosted on 2009-10-03 at 06:27:27ID: 25485285

I just tried that first script, Troys, and didn't get access denied but an XML error. He has the username hardcoded to twolf in a few spots (line 31 and 41). Changing those to $exchange_username got me in. Will try looking at the XML returned later today.

 

by: cescentmanPosted on 2009-10-03 at 07:38:30ID: 25485535

Troy has sent me an updated class_http, attached.

 

by: darkstar3dPosted on 2009-10-03 at 09:37:36ID: 25485905

Popped that in real quick, it gets a cookie (which tells me that it was successful logging in) but ends with can't authenticate.

 

by: cescentmanPosted on 2009-10-05 at 23:47:32ID: 25502321

That's exactly what is happening for me. I still haven't had a chance to try ASP as life got hectic. Hope to look today.

 

by: cescentmanPosted on 2009-10-07 at 09:27:14ID: 25517185

The script at http://msdn.microsoft.com/en-us/library/ms878636%28EXCHG.65%29.aspx work straight away so that makes me think the error lies in the PHP not the exchange server configuration?

 

by: darkstar3dPosted on 2009-10-08 at 14:03:46ID: 25530060

I should have more time over the next few days to play with this. I haven't examined those classes that Troy built fully, although from his page it seems some peeps got it to work. But, auth errors and XML errors is what I get from it. The big issue could be that PHP has moved along since then. PHP4 was everywhere then and PHP5 changed a lot of stuff. Definitely broke a lot of my scripts.

Hmmm, which version of PHP are you using?

 

by: darkstar3dPosted on 2009-10-08 at 14:04:47ID: 25530073

I'm running 5.2.8

 

by: cescentmanPosted on 2009-10-08 at 22:54:15ID: 25532613

5.2.11on my development machine and 5.2.5 on my internal web server.

 

by: darkstar3dPosted on 2009-10-10 at 21:30:57ID: 25544862

Just looked at my PHP install, any 5. version should have a HttpRequest class which you can enable by uncommenting the extension=php_http.dll line in the php.ini file.

Going to try using that instead of Troy's.

 

by: darkstar3dPosted on 2009-10-13 at 13:55:06ID: 25564509

Spent time during lunch on this. What is fairly easy with ASP seems so convuluted with PHP at least with NTLM. Are you using basic authentication by chance? Not recommended but if you are, probably could proceed faster.

 

by: cescentmanPosted on 2009-10-14 at 00:18:42ID: 25567965

Here I have to confess my ignorance. I'm unsure what NLM means and regarding basic authentication  how does one check?

 

by: darkstar3dPosted on 2009-10-14 at 07:46:30ID: 25571095

NTLM (NT Lan Manager) is a session based security authentication mechanism for use with AD. The .NET protocols have built in routines to get through all the challenges/responses needed to authenticate.

Basic authentication is sending information (user name/password) in the clear.

From your Exchange system manager, bring up the props on the Exchange virtual server, then Access tab, Authentication button. Which methods are checked?

 

by: cescentmanPosted on 2009-10-14 at 09:27:11ID: 25572324

Yes our usual access for exchange is using outlook and it uses our AD authentication. I'm having difficulty following:-

"... Exchange system manager, bring up the props on the Exchange virtual server, then Access tab, Authentication button ...". I have tried most of the objects in exchange system manager and none of them throw up properties with an access tab.

 

by: darkstar3dPosted on 2009-10-14 at 09:44:33ID: 25572494

System Manager, (Admin Groups, then the group,) Servers, Protocols, HTTP, Exchange Virt Server.

If there aren't any admin groups, that part won't be there. If you can't get all the way there, you don't permissions to it, which if you are doing Webdav would be strange.

 

by: cescentmanPosted on 2009-10-15 at 00:05:42ID: 25577958

Hmm can't see an access tab:-

 

by: cescentmanPosted on 2009-10-15 at 06:17:44ID: 25580173

Should have added that I'm a domain admin.

 

by: darkstar3dPosted on 2009-10-17 at 06:22:53ID: 25595867

How many servers do you have? That looks like a front end server properties. The backend is where the authentication is done at.

If it is a backend, maybe its standard. All my servers are enterprise and I can't verify that.

 

by: cescentmanPosted on 2009-10-19 at 03:20:45ID: 25603890

There are two servers that pertain to what I am doing at the moment. The Domain Controller is also the exchange server running Exchange 2003 Standard. That is using Windows 2003 standard and the web server running Windows 2003 Web Edition with IIS and PHP Version 5.2.5. I use PhpEd for development on a Windows XP machine that is part of the domain and that uses PHP Version 5.2.11. The screen shot is taken from running System Manager on the domain controller.

 

by: darkstar3dPosted on 2009-10-19 at 07:26:19ID: 25605392

Everything that I read states that Standard Edition also has the access tab. Ok, will keep working on why I can't get authenticated. :( No code I find authenticates, which seems strange.

 

by: darkstar3dPosted on 2009-10-19 at 07:27:00ID: 25605396

No PHP code that is. :)

 

by: cescentmanPosted on 2009-10-19 at 07:30:53ID: 25605433

This is exactly what has been happening for me. It's a real puzzle, I am very grateful that you are spending time on this.

 

by: darkstar3dPosted on 2009-10-23 at 02:24:15ID: 25642586

I'll be home this weekend, so I hope to get this working. I'm thinking Troy must have some NTLM modules in his Apache and PHP that we don't have. I just looked at my stuff and neither have NTLM as I can see.

 

by: cescentmanPosted on 2009-10-23 at 02:26:00ID: 25642599

That's an interesting possibility I'll ty e-mailing him, he may respond.

 

by: cescentmanPosted on 2009-10-23 at 02:31:56ID: 25642640

OK it's done I'll let you know if he responds.

 

by: cescentmanPosted on 2009-10-24 at 23:54:17ID: 25655752

I've had a response. He is using no extra NTLM modules.

 

by: darkstar3dPosted on 2009-10-25 at 06:20:13ID: 25656533

Wow, I haven't fully examined his class, but i'm thinking that it must be using Basic authentication then. It is the only thing that I have off.

I definitely wasn't aware of all the back and forth responses used by NTLM that .NET handles automatically.

 

by: cescentmanPosted on 2009-10-25 at 06:27:36ID: 25656552

The replacement script I posted was supposed to work with FBA.

 

by: darkstar3dPosted on 2009-10-25 at 08:11:24ID: 25656846

Understood, but neither works for me. :)

 

by: darkstar3dPosted on 2009-10-25 at 08:11:40ID: 25656848

Even the mods I made while poking around.

 

by: cescentmanPosted on 2009-10-25 at 09:06:01ID: 25657020

I am puzzled as to why nothing seems to work, especially as there appears to be references to getting PHP and Exchange talking on the web. Obviously Troy got it working. I wonder if PHP5 breaks it, the original development was in 2006 so it could have been done in 4? I'll look into setting up a machine with 4 on it to see.

 

by: darkstar3dPosted on 2009-10-25 at 10:32:21ID: 25657380

Looking at the XML syntax, it is PHP4.

 

by: darkstar3dPosted on 2009-10-28 at 15:47:09ID: 25689084

As much as I wanted solve this, after 5 hours today, I'm nowhere closer.

Since you are running this on a windows server, maybe a proxy service could be the trick.

 

by: cescentmanPosted on 2009-10-28 at 16:09:34ID: 25689231

I'm away for a few days will get back to you on the weekend.

 

by: darkstar3dPosted on 2009-11-18 at 07:14:53ID: 25850541

This may be what you need.

http://www.likewise.com/

 

by: cescentmanPosted on 2009-11-19 at 00:55:15ID: 25858644

Not sure about that. I'll look into it more. Sorry it's gone quiet. Got back off leave and suddenly 3 other projects were shoved to the top of the list of priorities. I'm hoping I'll be back to this in a few days.

 

by: cescentmanPosted on 2009-12-01 at 04:58:50ID: 25942297

I have now returned to this. To briefly recap what has happened so far.

Originally FBA was enabled on exchange and I tried both the new HTTP class of Troy's to no avail.
I then switched off FBA and tried the old HTTP class to no avail.
I then re-enabled FBA.

I decided to start over.

I tried the old and new HTTP class and they failed.
I switched to PHP 4 and suddenly the old HTTP class worked - there were some errors being returned in PHP 5 which needed sorting out but once these were done I got the output.

In PHP 4 and 5 the new HTTP class still fails.  It returns an authentication error. Using Firebug and Firecookie while I step through the code there I can't see the cookies "sessionid" and "cadata" being created.

The puzzle is that exchange is still showing FBA is switched on. If FBA is switched on is it still possible to use Basic Authentication (if that is the right term) or is FBA really off even though is shows on?
Is the failure related to something wrong with the configuration of FBA or that the cookies aren't being set?

 

by: darkstar3dPosted on 2009-12-04 at 09:03:10ID: 25973537

I don't have PHP4 but I had suspected that PHP5 was the culprit after looking through the class. FBA requires the cookie being sent with every request and I didn't see a mechanism for accomplishing that (although it has been weeks since I looked at the class.)

Did you see any cookies in the response from exchange? Where are seeing that FBA is still on?

 

by: cescentmanPosted on 2009-12-14 at 09:57:30ID: 26046511

FBA shows on as in the screen shot above:-

http://www.experts-exchange.com/images/191676/Exchange04.jpg

Regarding the cookies I'm not absolutely sure what I'm looking for. I have implemented Firebug and Firecookie in FireFox. Using those no cookies are being set except PHPSESSID.

 

by: darkstar3dPosted on 2009-12-17 at 04:11:21ID: 26070890

Tonight I'll look using those tools to see what cookie my server gives with FBA. I'm wondering if it has anything to do with Firefox not being a full OWA platform for Exchange 2003.

 

by: cescentmanPosted on 2009-12-17 at 08:42:04ID: 26073280

Hmm I rebooted the exchange server and magically it is now working perfectly. I'm guessing that the problem was originally to do with the errors produced by PHP 5. Messing about with the FBA setting produced a overlay problem which was resolved by the reboot. MANY MANY thanks for al the help on this you are a star. Now to start exploring Webdav in anger. No doubt I shall be revisiting EEX.

 

by: cescentmanPosted on 2009-12-17 at 08:52:03ID: 31632316

This was a time consuming issue and the solution isn't easy to pinpoint so the points have been attached to a fairly arbitrary response. Without the tenacity and support of darkstar3d I doubt I would have resolved it. I haven't catalogued the changes that are needed to Troy's script. If in the future anyone wants then then message me and I will write them up.

 

by: darkstar3dPosted on 2009-12-17 at 09:10:55ID: 26073524

Wow! Good deal. PHP5 has been a blessing but it changed so many things that some folks are still using PHP4. Glad its working for you!

20120131-EE-VQP-002

3 Ways to Join

30-Day Free Trial

The Experts

98% positive feedback on 31,087 answers since March 2000. angeliii is a Microsoft Most Valuable Professional for his work with MS SQL Server & Develoment.

He has also proven his knowledge of Visual Basic Programming, PHP Scripting and Oracle Databases.

The Experts

97% positive feedback on 10,752 answers since July 2000. lrmoore has more than 18 years experience in the networking industry.

The six-time Mircosoft MVPs specialties include firewalls, virtual private networking, and network management.

Testimonials

"...and excellent source for support... Kind of like having your very own IT dept." Electriciansnet

Testimonials

"I was apprehensive at signing up at first. However... it has already made my life as an IT administrator much easier." JaCrews

Testimonials

"WOW! You guys have great, active, and knowledgeable people on here." moore50

Business Clients

Business Clients

In the Press

"If you’ve got a question... Experts Exchange can supply an answer.”

In the Press

"...an invaluable aid for both IT professionals and those who require tech support."

In the Press

"where IT professionals provide quick answers on just about any topic"

Business Account Plans

Loading Advertisement...