2014-09-29 4 views
2

Ну, я знаю, что это должно быть сделано с помощью .htaccess моего .htaccess в корне моего сайта и здесь его содержаниеУдаления .php из URL

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^(.*)$ $1.php 

Также моды переписывают включен в моем сервере , У меня есть форма с действием на ./getReadings.php в нем. Но когда я меняю его на ./getReadings, он говорит, что tehre не является таким файлом на сервере. Какая у меня ошибка?

+2

Попробуй добавить 'Опция -MultiViews' до' директивы RewriteEngine' –

+0

совершена, чувак! Отправьте ответ –

ответ

3

Попробуйте добавить Options -MultiViews перед тем RewriteEngine директива

Options -MultiViews 
RewriteEngine On 

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

Примечание: MultiViews о Apache контента переговоры (что здесь проблема, поскольку filename автоматически переводится как filename.php существующий файл). Вот почему вы должны отключить его.


EDIT: прямо сейчас, вы можете получить доступ к такой же содержание, 2 различных ссылок (с или без php расширения). Для того, чтобы избежать дублирования контента (что плохо для поисковых систем), вы можете перенаправить расширения extensionless эквивалента с этим кодом

Options -MultiViews 
RewriteEngine On 

RewriteCond %{THE_REQUEST} \s/(.+?)\.php [NC] 
RewriteRule . /%1 [R=301,L] 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^(.*)$ /$1.php [L,QSA] 
0
RewriteEngine on 
    RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC] 
    RewriteRule^%1 [R,L] 

    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME}\.php -f 
    RewriteRule ^(.*)$ $1.php 
+1

Пожалуйста, не отправляйте код. Вы также должны добавить объяснение того, что делает код. – arco444

0
Options -MultiViews 
RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^(.*)$ $1.php 
Смежные вопросы