Mod_rewrite vérifier si le fichier php existe

Je suis en train d'écrire quelques règles de mod_rewrite. Tout fonctionne bien pour le moment. Pour le moment mon générique Url ressembler à ceci:

http://website.com/about-us
http://website.com/privacy

Pour le moment, ces 2 liens sont mod_rewritten à content.php, parce que about-us et privacy n'existe pas .php les fichiers, mais plutôt, leur contenu est stocké dans une base de données, qui content.php récupère.

J'ai une autre url:

http://website.com/contact-us

Qui n'existe pas en tant que .fichier php, car il contient des données personnalisées.
Comment puis-je vérifier pour voir si contact-us.php existe. Si elle le fait, rediriger website.com/contact-us à website.com/contact-us.php, sinon, rediriger vers website.com/content.php

Ci-dessous est mon mod_rewrite fichier tel qu'il est:

RewriteEngine On

# I want the following condition and rule to look to see if the .php file exists,
# and if it does, redirect to the physical page, otherwise, redirect to content.php
RewriteCond %{DOCUMENT_ROOT}/([a-zA-Z0-9\-_]+).php -f
RewriteRule ^([a-zA-Z0-9\-_]+)\.php$ [L]


RewriteRule ^([a-zA-Z0-9\-_]+)$ /content.php [L]
RewriteRule ^(product1|product2|product3)/(designer1|designer2|designer3)$ /search.php?productType=$1&designer=$2 [L]
RewriteRule ^sale/(product1|product2|product3)$ /search.php?sale=1&productType=$1 [L]

Si vous avez besoin de plus d'informations, s'il vous plaît laissez-moi savoir!
J'apprécie les réponses 🙂

OriginalL'auteur Phil Cross | 2013-10-27