У меня есть много URL-адресов, таких как domain.com/something/<-notice конечная косая черта, индексированная с помощью google, благодаря предыдущему разработчику, реализующему wordpress, который теперь означает, что я застрял, пытаясь сделать много высокоразвитых страниц в SEO перенаправление на новый веб-сайт, который заменит веб-сайт Wordpress и должен иметь одинаковые URL-адреса.
Все на моем новом сайте. У меня есть страница, которая функционирует как уловка и выполняет запрос базы данных, чтобы проверить, существует ли у нас имя члена (//в приведенном выше примере URL) и отображает содержимое в домене.com/что-то
Теперь сначала я подумал, что это было в сумке, выполнив следующие правила перезаписи:
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /membersite.php [L]
Ну, это была половина битвы, когда я получил domain.com/something AND domain.com/something/, отлично работающий, но теперь проблема с этим заключается в том, что у меня есть дублированный контент в глазах Google, один набор контента в домене.com/something И другой в domain.com/something/
Поэтому мне нужно изменить переписывание, чтобы сделать 301 на domain.com/something/на domain.com/something.
Следует также упомянуть, что любые другие несуществующие каталоги или запросы файлов должны быть перенаправлены на domain.com без конечной косой черты.
Кроме того, эта часть работает нормально, но полагаю, что я должен упомянуть страницу membersite.php, которая никогда не отображается в URL-адресе, а вместо этого/что-то, что является страницей профиля пользователя, так что все видят всю картину
Полное рабочее решение, которое я, наконец, выяснил, это порядок операций
RewriteEngine On
RewriteOptions inherit
RewriteBase /
RewriteRule ^index\.php$ - [L]
**RewriteRule ^(.+?)/$ $1 [R=301,L] // this part first strips the trailing slash**
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /membersite.php [L] //this part handles internally which file i'm loading from the server to process the request.