Мне нужна твоя помощь. У меня есть этот URL: wwww.myurl.com/?verfy=CDPOR888 ИЛИ wwww.myurl.com/index.php?verfy=CDPOR888

Я бы хотел быть таким: wwww.myurl.com/CDPOR888

Помогите, пожалуйста, как это сделать с помощью .htaccess?

Я пробовал этот код в .htaccess, но не работал:

RewriteRule ^([^/]*)\.php$ /?perms_verify=$1 [QSA,L,NC]

Но проблема в .php, когда я удаляю его, я получаю сообщение об ошибке.

ПРИМЕЧАНИЕ. .htaccess без учета регистра

3
Sylarman5 3 Июл 2021 в 09:17

3 ответа

Лучший ответ

Вы можете просто использовать это правило:

RewriteEngine On

# request is not for a file
RewriteCond %{REQUEST_FILENAME} !-f
# request is not for a directory
RewriteCond %{REQUEST_FILENAME} !-d
# rewrite to destination path
RewriteRule ^([\w-]+)/?$ ?verfy=$1 [QSA,L]
2
anubhava 3 Июл 2021 в 06:31

Пожалуйста, замените это правило!

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
# Use this rule
RewriteRule ^([^\.]+)$ $1.php [NC,L]
2
Sheno Navy 3 Июл 2021 в 07:18

Обновите файл .htaccess как

DirectoryIndex index.php

# remove the next 3 lines if you see a 500 server error


FileETag none
ServerSignature Off

Options All -Indexes

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^([0-9a-zA-Z_-]{1,16})$ index.php?verify=$1 [L]
</IfModule>

На странице wwww.myurl.com/index.php напишите логику для отслеживания значения проверки с помощью метода GET и выполнения дальнейших операций.

0
DHIRAJ KULKARNI 3 Июл 2021 в 07:10