Compruebe mod_rewrite si el archivo php existe
Estoy tratando de escribir algunas reglas mod_rewrite. Todo está funcionando bien en este momento. En este momento mis URL genéricas se ven así:
http://website.com/about-us
http://website.com/privacy
Por el momento, estos 2 enlaces están mod_rewritten acontent.php
, porqueabout-us
yprivacy
no existen como archivos .php, sino que su contenido se almacena en una base de datos, que recupera content.php.
Tengo otra url
http://website.com/contact-us
Que existe como un archivo .php, porque contiene datos personalizados. ¿Cómo puedo verificar sicontact-us.php
existe Si lo hace, redirigir.website.com/contact-us
awebsite.com/contact-us.php
De lo contrario, redirigir awebsite.com/content.php
A continuación se muestra mi archivo mod_rewrite tal como 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 necesita más información, por favor hágamelo saber! Aprecio las respuestas :)