#php #.htaccess #core
#php #.htaccess #Ядро
Вопрос:
Это мой код .htaccess после удаления расширения .php. Я столкнулся с этой ошибкой
Неверный запрос Ваш браузер отправил запрос, который этот сервер не смог понять.
DirectorySlash On
RewriteCond %{THE_REQUEST} ^GETs([^.] ).php?id=([^amp;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
Комментарии:
1. каков ваш исходный URL-адрес, пожалуйста, укажите ваши текущие правила, типичные для понимания.
2. cloud9cumulus.com/shieldpayments/view/tasks.php это URL-адрес и
3. и в какой папке у вас есть ваш htaccess?
4. код слишком длинный, поэтому я не могу поместить его здесь
5. он находится в основной корневой папке
Ответ №1:
Попробуйте это,
Options -MultiViews
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^shieldpayments/view/([w-] )$ shieldpayments/view/$1.php [L]
Этого правила достаточно, чтобы удалить расширение .php для вашего текущего URL-адреса и удалить другое правило, связанное с этим, прежде чем пытаться.
Комментарии:
1. Хорошо, большое вам спасибо, я проверю и сообщу вам.
Ответ №2:
Решение проблемы, наконец, получено, и вот оно
<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>