.htaccess; продление не требуется - PullRequest
6 голосов
/ 28 июня 2011

Мне нужен код .htaccess, который будет обрабатывать файлы без расширений как файлы PHP.

Предположим, что посетители посещают www.mywebsite.com/dir1/dir2/file.name, сначала он увидит, что файл dir1/dir2/file.name существует, и если он не существует, он будет искать dir1/dir2/file.name.php (то есть с расширением .php).

Возможно ли это как-то?

Ответы [ 3 ]

9 голосов
/ 28 июня 2011

Вы можете написать правило перезаписи, которое вступает в силу только в том случае, если запрошенный файл не существует.

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !\.php$
RewriteRule ^(.*)$ $1.php [L]
3 голосов
/ 28 июня 2011

Вы должны взглянуть на директиву Apache Options, в частности, опцию http://httpd.apache.org/docs/2.0/content-negotiation.html, которую вы можете включить в файл .htaccess и которая сделаеттолько это.

Добавьте к своему .htaccess:

Options +MultiViews
1 голос
/ 28 июня 2011

Хорошо, ответ был комбинацией ответов.Мне нужно было добавить Options +MultiViews в моей конфигурации Apache.Затем я расширяю Andrews ответ на следующие вопросы:

RewriteEngine On

RewriteCond %{REQUEST_URI} !^/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ $1.php [L]

С уважением и большое спасибо!Kevin

...