Код перезаписи URL не работает на моем .htaccess

Мой оригинальный URL

http://www.mcoh.co.in/blog-single?category=Blog&ID = Janurary% 202018% 20Product% 20training% 20Scores

и ожидая в:

http://www.mcoh.co.in/mcohBlog/Janurary%202018%20Product%20training%20Scores

Но получаю тот же URL, что и оригинал.

## hide .php extension
# To externally redirect /dir/foo.php to /dir/foo
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
RewriteRule ^ %1 [R,L,NC]

## To internally redirect /dir/foo to /dir/foo.php
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^ %{REQUEST_URI}.php [L]
Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteRule ^mcoh([^/]*)/([^/]*)\$ /blog-single?category=$1&id=$2 [L]

0

Решение

Ваша проблема с этой строкой:

RewriteRule ^mcoh([^/]*)/([^/]*)\.php$ /blog-single?category=$1&id=$2 [L]

замените его на:

RewriteRule ^mcoh([^/]*)/([^/]*)$ /blog-single?category=$1&id=$2 [L]

Расширение уже удалено по предыдущему правилу.

Более того, ваш код должен выглядеть так:

Options +FollowSymLinks -MultiViews

RewriteEngine On
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
RewriteRule ^ %1 [R,L,NC]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^ %{REQUEST_URI}.php [L]
RewriteRule ^mcoh([^/]*)/([^/]*)$ /blog-single?category=$1&id=$2 [L,NE]
0

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

RewriteEngine on
RewriteRule ^/?mcohBlog/([^/d]+)/?$ blog-single.php?category=Blog&id=$1 [L,QSA]

Вы можете попробовать это? Просто добавьте это rewriterule в конце вашего кода. и удалите последнюю строку кода


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

Также ваша организация кода очень неправильная. Вот почему это не работает, как ожидалось

Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
RewriteRule ^ %1 [R,L,NC]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^ %{REQUEST_URI}.php [L]
RewriteRule ^/?mcohBlog/([^/d]+)/?$ blog-single.php?category=Blog&id=$1 [L,QSA]

Это должен быть ваш последний код

0

Перенаправить / переписать

http://www.mcoh.co.in/blog-single?category=Blog&id=Janurary%202018%20Product%20training%20Score

в

http://www.mcoh.co.in/mcohBlog/Janurary%202018%20Product%20training%20Scores

поместите следующее в верхней части вашего файла htaccess

RewriteEngine on

#To externally redirect /blog-single?category=foo&id=bar to /mochBlog/bar
RewriteCond %{QUERY_STRING} ^category=([^&]+)&id=(.+)$ [NC]
RewriteRule ^.*$ /mochBlog/%2? [R,L]
#To internally redirect /mochBlog/bar to /blog-single?category=foo&id=bar
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^mochBlog/(.+)$ /blog-single?category=blog&id=$1 [L]
0
По вопросам рекламы [email protected]