Lo que estoy tratando de hacer es usar .htaccess mod_rewrite para eliminar la extensión .php de la URL, de modo que si alguien escribe una página con la extensión php como about.php, se mostrará un error 404 y si alguien hace clic en cualquiera de los enlaces en el menú de navegación o cualquier enlace ubicado dentro del sitio en cualquier página, la URL será el nombre de archivo predeterminado sin la extensión .php. ¿Cómo hago para que esto funcione?
Puede usar estas reglas en la raíz de su sitio .htaccess:
RewriteEngine On # To externally redirect /dir/file.php to /dir/file RewriteCond %{THE_REQUEST} \s/+(.+?)\.php[\s?] [NC] RewriteRule ^ /%1 [R=301,NE,L] ## To internally rewrite /dir/file to /dir/file.php RewriteCond %{DOCUMENT_ROOT}/$1.php -f RewriteRule ^(.+?)/?$ $1.php [L]