.htaccess — Ошибка после удаления .php exetension

Это мой код .htaccess после удаления расширения .php. Я сталкиваюсь с этой ошибкой

Неверный запрос Ваш браузер отправил запрос, чтобы этот сервер
не мог понять.

 DirectorySlash On
RewriteCond %{THE_REQUEST} ^GET\s([^.]+)\.php\?id=([^&\s]+)\s [NC]
RewriteRule ^ %1/%2? [R,L]
# Redirect external .php requests to extensionless url
RewriteCond %{THE_REQUEST} ^(.+)\.php([#?][^\ ]*)?\ HTTP/
RewriteRule ^(.+)\.php$ https://%{HTTP_HOST}/$1/ [L,NC]

РЕДАКТИРОВАТЬ:

.htaccess находится внутри корневого каталога.

Исходный URL-адрес: cloud9cumulus.com/shieldpayments/view/login.php

0

Решение

Попробуй это,

Options -MultiViews

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^shieldpayments/view/([\w-]+)$ shieldpayments/view/$1.php [L]

Этого правила достаточно, чтобы удалить расширение .php для текущего URL-адреса и удалить другое правило, связанное с этим, перед попыткой.

0

Другие решения

Решение проблемы, наконец, получить и вот оно

<IfModule mod_rewrite.c>
Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_METHOD} !POST
RewriteCond %{THE_REQUEST} \s/+(.+?)\.php[\s?] [NC]
RewriteRule ^ /%1 [R=302,NE,L]
RewriteCond %{REQUEST_METHOD} !POST
RewriteCond %{THE_REQUEST} /index\.php [NC]
RewriteRule ^(.*)index\.php$ /$1 [L,R=302,NC,NE]
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+?)/?$ $1.php [L]

</IfModule>
0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector