Posted: January 24, 2013 at 11:43 pm
|
I’m trying to use the iOS app and can’t seem to get it working. I initially had the “Blog returned invalid data” but that magically disappeared – not sure why. I’m now facing the “sorry, can’t log in” HTTP 404 Not Found error. (actually i just upgraded from WP 3.5 to 3.5.1 today, and the error changed today, not sure if that was the reason). I have disabled every plugin except the Event Espresso plugins, and gone to the default twentyten theme to no avail. I know xmlrpc is working because the WordPress iOS app connects and pulls data just fine. I’ve validated permissions of the directory (755) and the location (wordpress root). Looking at the logs I see the 404 error on the POST, but don’t know what may be missing. Any advice on how to troubleshoot this? Any debug options to show the details of the failing xmlrpc post from your app? Installation details: Thanks for your help!
|
Hi there, Have you installed the mobile app api? If not, you can download a copy from the ticketing add-on documentation page: |
|
|
Josh, thank you for your response. Yes, sorry, I mentioned I validated the directory permissions were 755, but forgot to say it was the espresso-services directory I was talking about. |
The endpoint URL may not be correct. Also, is this a single site install of WordPress, or a multisite install? |
|
|
Ok, so I spent a few more hours trying to figure this out and I think I have a few things that may be helpful. To watch the packets, I created a virtual access point (hotspot) on my laptop and then connected my iphone to that and ran wireshark. I’m surprised this isn’t happening to more people since it seems like a low level issue. I wonder if there is a setting on apache that tells it to try and read the data as xml or something in xmlrpc.php? I don’t know enough about that. |
|
To answer your other question – this is a single site install. |
Hi there, This isn’t something that I’ve seen before. Have you checked your server’s PHP error logs to see if there are any PHP errors being thrown when you try to use the ticketing add-on? It sounds like you’ve done a lot of the leg work, but it might help if we have access to the site URL and a temporary admin account to look into this further. If it’s possible, can you send along a few of those details on our send details page? |
|
|
Josh, Thank you for your response. I will send login details. It is an odd behavior. It seems something is blocking the request before it gets very far. Perhaps wordpress, htaccess or the hosting provider. As for wordpress, I assume that when you request/post to xmlrpc.php, that is the first file it will load (if it’s not blocked). I put in a debug statement as the first line, and it does not get triggered unless I use the WordPress iOS app. Makes sense, as it’s a 404 error returned. As for htaccess, I tried commenting out each htaccess rule just to see if that helped, but nothing changed. Makes sense, as none of the rules rewrote to a 404. However, I don’t understand htaccess that well, so I may have missed something. I have not yet contacted my hosting provider on this issue. While researching how xmlrpc works and troubleshooting tips, I found that every example had the Content-Type: text/xml; header. It seems to be an important item. I’m not sure what would be blocking a request without that, but I wonder if it’s not a good thing. As I mentioned, the WordPress iOS app has it, but the EE iOS app doesn’t have it in the request sent to the website, which is not related to what plugins, htaccess rules or hosting provider rules are in place. I will send my login details and look forward to what you find. Thanks again for your time and assistance! |
I have seen it where there were IP address restrictions set in the .htaccess file, and that ending up blocking the client app’s access, but that doesn’t sound like the case here. We’ll have a look and get back with you. |
|
Hi Devan, Can you check a few things? The FTP creds you sent are working when I try them. First, where is the xmlrpc.php file on this server? Also, can you try making a backup copy of the .htaccess file and try a log in with none of the .htaccess rules set? |
|
Hi Devan, I tried to ping your site with a generic XML-RPC client and did not get any response, which is also kind of strange. If you can send us FTP credentials that will work for us, we can investigate further. |
|
|
Sorry, I neglected to test the ftp login before I sent it. I have sent updated credentials. I just tested the WordPress app and it was able to connect and it refreshed to show the latest posts. I also removed htaccess and tried the EE app. It sent “blog returned invalid data” instead of 404. I’ll have to put my virtual wifi/wireshark setup back together and see what it says. (i’ve put htaccess back for now). I’ll wait to hear back from you. I don’t want to step on your toes if you’re doing any file changes. Thanks again! |
Hi Devan, What version of iOS do you have installed? |
|
|
6.1 (had 6.0.x while doing the initial network tracing. |
I cannot login into your site using my iOS device, but I was able to login using an Android device. So I tested our sandbox website and I can view events there using my iOS device. I will send you login details to our sandbox website so you can try testing your iOS device there. Also, I opened up your error_log that is in your root directory, this is what I see in that file: [29-Jan-2013 16:55:29 America/Chicago] in xmlrpc.php Those errors seem to correspond to the times that I tried testing on my iOS device. |
|
Devan, I sent you login credentials to our sandbox server. Please try logging in to that site using the iOS app to see if you can connect. |
|
|
I was able to connect and view the upcoming events on your sandbox site without issue. Those debug message (“in xmlrpc.php”) are the message I put in for debugging. Interesting thing is, I don’t see those when I connect with my iOS device – i wasn’t even getting to that page. The fact that you triggered that is interesting. I was also able to log into my site using an android device. i’ll have to get the virtual hotspot/wireshark thing going to see if there is anything interesting… |
I was looking at your htaccess file and see that it is quite extensive, but I don’t really see anything in there that could be causing issues. I also see that you have (or have had) a few security plugins installed. I wonder if something in one of the security plugins might have left some restrictions in place? |
|
Okay, I turned on the debug console in Xcode and this is the response I get from your server: This is the response I get from our sandbox server: |
|
|
That kinda makes sense based on what I’m seeing in the network traffic. I see the redirects and then the followup call/post. Since there is no htaccess in these cases, I suspect the hosting provider has some sort of blocking enabled perhaps blocking POST without this header (who knows?). I have submitted a ticket to validate. I am hoping they can confirm so we can at least pinpoint the cause. |
|
I may be a day or two for the hosting provider to respond. I’ll post a followup when I receive an response. Thank you for the time and effort helping to troubleshooting this issue! |
|
Ok, my hosting provider gave me the details behind this. The scenario I had them research was with no htaccess using the EE iOS app. Their response was that this request was being blocked by mod_security with a rule that blocks anything without a Content-Length or Content-Type header. Also, I don’t have the ability to override any modsecurity rules in htaccess. All the usual commands that people suggest to solve this result in a 500 internal server error. Thanks again for your effort looking into this. Hopefully this is helpful information. I would prefer to stay with my hosting provider, and I agree with the security stance. |
Hi Devan, Thanks for reporting back. That makes sense. This is something we should be able to fix. We’ll ask our iOS developer to take a look. It may take some time with the App store approval process before the update can be shipped. |
|
Devan, Does it need to be something like this? |
|
|
Based on the network traffic I saw from WordPress iOS app, and from examples on the web, I think it just needs to be: Content-Type: text/xml I’ll send you a link to a screenshot from wireshark looking at the request packet from EE and WP for comparison. |
Hi Devan, Let me give you a little background about our iPhone app. We had the app built by a third party developer over a year ago. That developer disappeared, but we were fortunate enough to get the source code before that happened. Since then we have hired a new iOS developer, that is working very hard to build a new version of the iPhone app and an iPad app. He has been able to make a few bug fixes to our existing iOS in the past, but the code is very hard to complicated and uses third party code for the HTTP/XMLRPC support. So, he is willing to fix it, but it may be very expensive, and the fix will be obsolete in about 3 weeks, when we launch the new version of the app. It will take at least a day or two to fix the current version, then another 7 to 10 days for Apple to approve the update. If this is an emergency, we can try to give you an add-hoc build. I don’t recommend this, and you probably understand that no matter what we do, it has to go through the iTunes approval process. So that is where we are at with this. Thoughts? |
|
|
Thanks for the context. This is definitely not an emergency. Our major event is in September, and I was just playing around to see if we could use the Tickets functionality. We’d like to try the ticket thing on a few smaller events over the spring/summer. Thanks again for your responses. Look forward to the new app in a month or so! |
Here’s an update on the new app: It’s now available in the Apple app store under the name Event Espresso HD. It’s universal, so you can use it with an iPhone, an iPod touch, and the iPad. You’ll need to install the new API (which installs as a WordPress plugin). The new API can be downloaded from your account page after you opt-in to the pre-release channel. |
|
The support post ‘Mobile ticketing 404 error (2)’ is closed to new replies.
Have a question about this support post? Create a new support post in our support forums and include a link to this existing support post so we can help you.