colocar links sem extensão de arquivo (.php)

É possível configurar o Apache para não mostrar uma extensão de arquivo?

Por exemplo: digamos que tenhodomain.com/page.php mas quer terdomain.com/page como o url.

Alguma ideia?

questionAnswers(6)

cada aplicativo de servidor da Web (apache, IIS, nginx) oferece suporte a isso. Como o nome sugere, ele pega o URL solicitado e o reescreve em um formato específico que você define.

Existem muitos guias disponíveis em www, mesmo se você estiver usando uma solução de hospedagem compartilhada, você ainda pode adicionar / modificar o arquivo .htaccess para fazer isso.

aiz, então você pode substituir o URL pelo seu próprio.

Use este manual.

Coloque este é o seu arquivo .htaccess

#turn on url rewriting 
RewriteEngine on

#remove the need for .php extention 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^(.*)$ $1.php

Isso permite que você acesse arquivos .php sem a extensão, para que seus links sejam lidos

href="/somepage"

e isso vai direto para

href="/somepage.php" 
QuestionSolution

vez recentemente e eu useieste tutorial para aprender, espero que você também ache ótimo:

RewriteEngine On
RewriteRule ^page?$ page.php

<a href="page">page</a>

MultiViews como uma opção de configuração vhost ou .htaccess. Vejohttp://httpd.apache.org/docs/2.2/content-negotiation.html#multiviews

Daquela página:

O efeito de MultiViews é o seguinte: se o servidor receber uma solicitação para / some / dir / foo, se / some / dir tiver MultiViews ativado, e / some / dir / foo não existir, o servidor lerá o diretório procurando arquivos chamados foo. *, e efetivamente falsificam um mapa de tipos que nomeia todos esses arquivos, atribuindo a eles os mesmos tipos de mídia e codificações de conteúdo que teriam se o cliente pedisse um deles pelo nome. Em seguida, escolhe a melhor correspondência para os requisitos do cliente.

 David Goodwin11 de jun de 2015 16:17
As multiviews podem ser bastante irritantes e atrapalhar as regras normais do mod_rewrite se a escolha de nomes de arquivos e padrões de reescrita se sobrepuserem.
 Indra Kumar S16 de set de 2016 10:46
Eu adicionei MultiViews no meu vhost sofrido por 2 dias. Não consegui descobrir por que meu URL de solicitação get limpo não estava funcionando .... Obrigado @TheGingerDog
 Scorpius21 de fev de 2018 19:29
O comentário da @DavidGoodwin e esta resposta realmente ajudou a resolver um conflito particularmente desagradável e difícil de rastrear entre as regras de reescrita e a opção MultiViews ativada.
 Seth Battin11 de jun de 2015 18:20
Muito verdadeiro. Use com cuidado.

yourAnswerToTheQuestion