There is an application for the iPad that allows you to manage your WordPress blogs directly, its actually a bit basic but hopefully that will improve over time. However I simply could not get it to talk to this blog – it would just keep throwing a ‘Blog returned invalid data’ error.
Turns out in their infinite wisdom NamesCo (our web hosts) have decided xml-rpc is bad
The standard xmlrpc.php script is quite commonly installed with many free blogging. Unfortunately, it is quite easy to exploit and often abused by amateur ‘hackers’ and spamming groups for malicious purposes.
However, most users that have the script on their sites don’t actually use it, therefore we have decided to block access to that filename to protect those users.
If you wish to use an XMLRPC service, simply rename the file to something like ‘xmlrpc_post.php’ and reference that script instead in your posting service.
Which seems a bit like saying SkyDiving is dangerous so you cant do it – but its ok to put on a parachute and jump out of plane as long as you call it PlaneJumping instead.
So in order to get it the iPad application to work we first have to rename the xmlrpc.php script to e.g. planejumping.php – you can call it anything you like NamesCo have just blocked access to files called xmlrpc.php.
But that’s not enough because clearly wordpress expects this file to be called xmlrpc.php and the file name is unfortunately not configurable.
Instead you have to hack the wordpress php scripts by hand at the current release (3.1) that means updating these files
planejumping.php (previously known as xmlrpc.php)
wp-includes/class-wp-xmlrpc-server.php
wp-includes/general-template.php
Simply replace all references to xmlrpc.php in these files to planejumping.php instead and you should be good to go.
Sorry for any inconvenience. We had to do this around 4 or 5 years ago to mitigate a security bug in WordPress that was rampant at the time. WordPress have long since patched the vulnerability but we still have the odd customer who installed WordPress years ago and hasn’t bothered updating it so would still be vulnerable to this.
I’ll request that our engineers review this policy but can’t guarantee it will be changed.
Thanks for the feedback.
I found your post and was hopeful it might sort out my problems as I have my WordPress blog on Namesco. I made the changes but am still being blocked from logging in from the WordPress blog. I have also tried disabling plugins and reverting to standard theme.
I had the same problem, tried your fix and renamed xlmrpc.php to myxmlrpc.php, which still didn’t work.
Once I gave it a completely different name it worked.
Thanks
This worked perfectly. Like me, you may need to remember to switch on XMLRPC access within the settings>writing page. Either way, I’m back up and running.
Thanks so much!
Thanks for this post. I could get the WordPress app to work, and you pointed me in the right direction.
There’s a WordPress plugin available that makes renaming XML-RPC easier. You do have to change the reference to XML-RPC in the plug-in’s code before uploading it and renaming the file in WordPress itself. But that’s a quick cut-and-paste job.
Here’s the download link:
https://wordpress.org/extend/plugins/rename-xml-rpc/installation/
– Richard
Hi sorry to pester you with further questions about this matter but I am a complete beginner to this blogging thing and I was really hoping to access my blog from the iPad WordPress app.
Like you I’m a names.co user and there knowledge base is rather scant on details on what to do.
Perhaps you will know the magic words that will lead me forward.
So far I have downloaded the plug-in:
https://wordpress.org/extend/plugins/rename-xml-rpc/installation/
installed it via FTP and it now shows up in my WordPress plugins.
I have changed
xmlrpc.php
to
xmlrpc_post.php
Activated the plugin
Adjusted the Settings-> Writing -> “XML-RPC -> enable
Is that it ?
Or do I need to do something else ?
I notice you state in your first post on the subject
“Simply replace all references to xmlrpc.php in these files to planejumping.php instead and you should be good to go”
That confuses me a bit (well a lot actually)
Do I need to do anything more or does the plug-in look after the details ?
Is there anything else I should do when attempting to log in via my iPad ?
Or do I just use my standard login procedure ?
Sorry if this all seems familiar territory to you but I am faced with this steep learning curve and no almost nothing about website encoding.
Thanks in advance.
Hello,
Your post has helped me out on my site. I followed the instructions
planejumping.php (previously known as xmlrpc.php)
wp-includes/class-wp-xmlrpc-server.php
wp-includes/general-template.php
and amended all references to file “xmlrpc.php” and replaced with name of new file. this worked, when all other info I could find did not.
One question, does this mean I will have to amend these files after every wordpress upgrade?
Many Thanks
Olie
hi david – the rename-xml-rpc plugin actually makes things much easier.
if you’ve installed and enabled the plugin as you say then all you should need to do is rename the xmlrpc.php file in your install to xmlrpc2.php and the WordPress app should start working.
Note that the plugin expects the file to be called xmlrpc2.php and not anything else (no xmlrpc_post.php for example) – you can change it but that involves tweaking the code of the plugin so not recommended!
hi olie – yes if you adopt the manual fix you will have to revisit after each upgrade unfortunately, as the files you’ve updated will probably be overwritten.
using the rename-xml-rpc plugin may be a simpler option – assuming that the plugin still works after the upgrade.
I’ve had this issue with Namesco also, I’ve had god knows how many arguments with Namesco Support about this issue, I’ve asked them why they are penalising users who do update there WordPress installations and not going after the people who don’t update, I’ve even suggested that they migrate all updated WordPress users to a separate server so that they can at least be allowed to use the xml-rpc function, however it just falls on deaf ears.
My advice is that all of us who are having this issue leave Namesco/Cheapnames for another provider who does allow this function, then perhaps they might actually do something to resolve the issue.
Perhaps they should contact all those users with out of date wordpress installations and inform them to update or have there websites disabled due to security issues with there outdated WordPress installations, but hey that would be to easy I expect.
Anyway anyone know of any Webhosts who do allow xml-rpc posting in the meantime . . . ?
Having the same problem with Namesco. Solving it by moving elsewhere.
Other Namesco issues affecting WordPress have included:
– Files and folders created with incorrect permissions, particularly affecting uploaded files.
– PHP memory running out if a few plugins are installed, even though phpinfo reports that memory settings are high.
– Permalinks require /index.php/ in them. Why the hell do they use Zeus servers? They offer an Apache to Zeus .htaccess conversion tool but it doesn’t work.
Had enough.
awesome article cheers for posting this – Robert