Mod_rewrite verificar se o arquivo php existe
Estou tentando escrever algumas regras mod_rewrite. Tudo está funcionando bem no momento. No momento, meus URLs genéricos são assim:
http://website.com/about-us
http://website.com/privacy
No momento, esses 2 links são mod_rewritten paracontent.php
, Porqueabout-us
eprivacy
não existem como arquivos .php, mas sim, seu conteúdo é armazenado em um banco de dados, que o content.php recupera.
Eu tenho outro URL:
http://website.com/contact-us
Que existe como um arquivo .php, porque contém dados personalizados. Como posso verificar para ver secontact-us.php
existe. Se isso acontecer, redirecionarwebsite.com/contact-us
parawebsite.com/contact-us.php
, caso contrário, redirecionar parawebsite.com/content.php
Abaixo está o meu arquivo mod_rewrite 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]
Se você precisar de mais informações, por favor me avise! Eu agradeço as respostas :)