Take the 2-minute tour ×
WordPress Development Stack Exchange is a question and answer site for WordPress developers and administrators. It's 100% free, no registration required.

So I see everyone's arguements against using this, but that seems like a huge flaw in Wordpress because a domain name as close to the root is crucial to a site's SEO.

I want my site which has rough 8 pages total to be able to be found by their simple titles, if they're preprended by a date, it just look convoluted and out of standards with most web standards.

Fast forward to me adding %postname% to my custom permalinks tab, all my url's were updated, and clicking on them brings me a 404.

No .htaccess file was made so I made one from scratch and included this :

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

# END WordPress

Update

Any of the permalinks except for the post ID option do not work. None of them work.

What o' what am I missing from this to make it actually work?

UPDATE 12/13/2011

Wordpress 3.3 was just released. And all these problems still exist. Clicking on any of the permalinks writes this to your .htaccess . The same text for any of the options :

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

# END WordPress
#

Using /%postname% doesn't work. At all.

share|improve this question
    
Not really as huge an issue as you think for SEO. Anyhow, I wanted to point out that WordPress 3.3 fixes the %postname% only performance issues with permalinks. –  chrisguitarguy Dec 6 '11 at 19:56
    
Ah good to know. Thanks~ –  Trip Dec 6 '11 at 20:17
    
Just tried 3.3 . Same b/s. Doesn't work. –  Trip Dec 13 '11 at 17:06
1  
I could be completely wrong, but that code block does not look to me like it is the mod_rewrite normally output by WordPress. First, backup/delete your custom .htaccess rewrite rules, and try letting WordPress generate its own .htaccess rewrite rules. If it is able to do so, you should be good to go. If, however, WordPress is unable to generate the .htaccess rules, then you have a problem. –  Chip Bennett Dec 19 '11 at 13:04
add comment

4 Answers

Your server should support URL rewrite in order to use custom (pretty) permalink. If you are using Apache web server then mod_rewrite module should be enabled. Whereas if you are on Microsoft IIS 7+ web server the URL Rewrite 1.1+ module and PHP 5 are the requirements.

A good documentation, examples and troubleshooting steps are given on wordpress permalink codex page.

share|improve this answer
    
I strongly suspect that this is the issue. –  Chip Bennett Dec 19 '11 at 13:04
add comment

What I did was reinstalled WordPress from the Dashboard Update area...then I made the Permalinks like this

/index.php/%postname%/

It worked fine

share|improve this answer
add comment

Just had the same problem.

Turns out that my host (names.co.uk) doesn't use Apache, instead it uses Zeus - which does not support Mod_ReWrite, and so no .htaccess file.

They have published a workaround here: http://www.names.co.uk/support/hosting/linux_hosting/1119-wordpress_rewrite_script.html

#Zeus webserver version of basic Wordpress mod_rewrite rules
map path into SCRATCH:path from %{URL}
look for file at %{SCRATCH:path}
if exists then goto END
look for dir at %{SCRATCH:path}
if exists then goto END
##### FIX FOR LOGIN/FORGOTTEN PASSWORD/ADMIN ETC #####
match URL into $ with ^/wp-.*$
if matched then goto END
##### FIX TO ALLOW SEARCH TO WORK #####
match URL into $ with ^/(.*)
set URL = /index.php/$1

For installations up any level from the docroot:

#Zeus webserver version of basic Wordpress mod_rewrite rules
map path into SCRATCH:path from %{URL}
look for file at %{SCRATCH:path}
if exists then goto END
look for dir at %{SCRATCH:path}
if exists then goto END
##### FIX FOR LOGIN/FORGOTTEN PASSWORD/ADMIN ETC #####
match URL into $ with ^/blog/wp-.*$
if matched then goto END
##### FIX TO ALLOW SEARCH TO WORK #####
match URL into $ with ^/blog/(.*)
set URL = /blog/index.php/$1

Maybe check your host and see if uses Zeus too.

share|improve this answer
add comment

Looking around, and after hrs of trying to figure out why all of the sudden, /%postname%/ stopped working,

i read somewhere(Found it!)

http://digwp.com/2011/06/dont-use-postname/

about performance issues reguarding

URL/postname

and all the running around WP does with the server just to return said data

and long story short, it was recommended for performance reasons (usually with bigger sites) to start with a number etc...

Since my /%postname%/ stopped working out of the blue.

i changed my newly not working permalink of /%postname%/ to /%post_id%/%postname%/ and its now working.

share|improve this answer
    
The issues with just postname were resolved a few versions ago, so that article is a bit outdated –  Manny Fleurmond Feb 1 '13 at 5:07
    
you sure because it just happened to me out of the blue, and im running the latest version of WP...and i haven't changed any settings or have plugins installed at all. –  somdow Feb 1 '13 at 16:20
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.