Итак, у меня есть этот файл .htaccess в папке / blog / на моем веб-сервере, и для работы с CMS блога, которую мы используем для этого конкретного клиента (Expression Engine), я написал этот .htaccess, чтобы сделать URL-адреса оптимизированными для SEO. Все это прекрасно работает, если я не перехожу на www.example.com/blog/, а затем переходит к основному правилу, которое я не хочу.
Я попытался добавить эту строку Google, которую вы можете видеть на 2-й последней строке, чтобы увидеть, что именно она обнаруживает, и она передает google "index.html" (без кавычек) - возможно, существует простой способ регулярного выражения для исключения строк, начинающихся с index.html но я к сожалению не ниндзя регулярных выражений ...
Вот содержимое .htaccess:
rewriteengine on
##############################
# BLOG CATEGORIES HOME
rewriterule ^beach-baby/?$ index.php/site/C4/
rewriterule ^adventure-baby/?$ index.php/site/C5/
rewriterule ^snow-baby/?$ index.php/site/C6/
rewriterule ^wild-child/?$ index.php/site/C7/
##############################
# BLOG CATEGORIES WITH PAGE NUMBER
rewriterule ^beach-baby/page([0-9]+)/?$ index.php/site/C4/P$1/
rewriterule ^adventure-baby/page([0-9]+)/?$ index.php/site/C5/P$1/
rewriterule ^snow-baby/page([0-9]+)/?$ index.php/site/C6/P$1/
rewriterule ^wild-child/page([0-9]+)/?$ index.php/site/C7/P$1/
##############################
# BLOG INDEX WITH PAGE NUMBER
rewriterule ^page([0-9]+)/?$ index.php/P$1/
##############################
# BLOG POST
#rewriterule ^([^/]+)/?$ http://www.google.ca/search?q=$1
rewriterule ^([^/]+)/?$ index.php/site/comments/$1/