Вопрос по expressionengine, .htaccess – Expression Engine - полное удаление index.php

3

Некоторое время я использовал приведенный ниже код в моем файле .htaccess, чтобы URL-адреса EE работали без использования index.php в URL-адресе. Хотя я обнаружил, что я получаю некоторые отчеты от инструментов сканирования, что я получаю дублированный контент в виде / lorem / ipsum /, а также появляется где-то как /index.php/lorem/ipsum/.

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

RewriteEngine On
RewriteBase /

RewriteCond $1 !\.(gif|jpe?g|png)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1 [L]

Ваш Ответ

1   ответ
8

Конечно, вещь.

# Enable Rewrite Engine
# ------------------------------
RewriteEngine On
RewriteBase /

# Redirect index.php Requests
# ------------------------------
RewriteCond %{THE_REQUEST} ^[^/]*/index\.php [NC]
RewriteCond %{THE_REQUEST} ^GET
RewriteRule ^index\.php(.+) $1 [R=301,L] 

# Standard ExpressionEngine Rewrite
# ------------------------------
RewriteCond $1 !\.(css|js|gif|jpe?g|png) [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1 [L] 
Здорово, спасибо, что нашли время, чтобы ответить на это для меня. Работает отлично! Leonard

Похожие вопросы