Solution of 404 error on publishing & editing post on wordpress

WordPress is best content management system for blogging.Many popular website uses wordpress to host their online content.You can check the list showcase of wordpress.org.The best part in wordpress is that it is easy to use, easy to customize and easy to develop using simply php language.Lots off free and paid plugin with thousand of free theme.There is also a large online wordpress community to fix your problem.

WordPress community helps almost all wordpress user to fix their bug.But this problem is not covered in any of them (at least i can’t find any solution on wordpress comunity forum) but many of wordpress user was gone through this problem.Finally i got a solution and decided to share with you.

 

Problem Faced

When i click on publish after creating content , it redirect me to a error page.Steps as followed

i. Content Written on url

http://www.domain.com/wp-admin/post-new.php

 

 

ii. After Click on publish it redirects to

 

http://www.domain.com/wp-admin/post.php

 

 

The above location is not available on server so a 404 not found error generated.

 

iii. Deactivated all plugin and tried to publish the post.Now for the first time it published but after that updating given the same error.So, problem unsolved with deactivating plug in.It means that the problem not due to plug ins.

 

 

Solution

I was looking for the solution around all wordpress community, got some solution but those didn’t work for me.As those solution works for few wordpress user, I am publishing all those if those work for you.

Solution Trial 1

Deactivate all plugin.Try to publish or edit the post.

Solution Trial 2

Revert theme to default one.Now again try to post or edit content.

Solution Trial 3

Change permalink structure one default one.If you use permalink in the format of

http://www.domain.com/post-title

 

 

Change it on

http://www.domain.com/?p=1

 

 

Now try to republish your post

Solution Trial 4

If your wordpress hosted on private server then disable “mod_security” on  “.htaccess” by following rule

#...
<IfModule mod_security.c>
SecFilterEngine Off
SecFilterPost Off
</IfModule>
 
<IfModule mod_env.c>
SetEnv MODSEC_ENABLE Off
PassEnv MODSEC_ENABLE
</IfModule>
#...

 

 

 

 

 

 

 

 

Solution Trial 5

If your worpress hosted on wordpress server you may also try to ruling your “.htaccess” file.If this method worked for you.The following rule you my try on “.htaccess”

 

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

# BEGIN 404 Fix

<IfModule mod_env.c>
SetEnv MODSEC_ENABLE Off
PassEnv MODSEC_ENABLE
</IfModule>

#END 404 Fix

 

 

 

 

 

 

 

 

 

 

 

 

Final Solution(Which workes for me)

As i am using Hostmetro shared server to host my website, so there is no way to try “Solution Trial 4”.But i have the option to contact support team.From admin panel, i had created a support ticket describing the problem and asked to disable “mod_security”. Hostmetro support team answered it in one hour to reconfirming my choice.After disabling “mod_security” on my domain i am able to create my post and there is no problem in updating.Disabling “mod_security” worked like a charm for me.

 

Though the solution of this problem worked for me but it may not work for you.If your problem is because of “mod_security” enabling then final solution will obviously work for you.Try to implement all solution mentioned above one by one and let me know in comment box which one best suits you.

The following two tabs change content below.
Satyam Baral

Satyam Baral

Hello readers, First of all thank you for reading the post & reading about me.I mostly blog on technology, day to day tricks & other things which i mostly stucked on my daily life.Beside technology blog , i have a personal blog mostly contains my poem.You may visit at satyambaral.blogspot.in

Leave a Reply

Your email address will not be published. Required fields are marked *