.htaccess ведет себя как фанк после перемещения сайта из Drupal в автономный режим - PullRequest
0 голосов
/ 14 декабря 2011

Я недавно сорвал свой полный сайт Drupal и перестроил все это в моей собственной структуре с нуля.Сайт отличный.Но проблема в том, что вы вводите поиск в Google для изображений.Когда вы нажимаете на изображение для моего сайта, вместо того, чтобы попасть на правую страницу, оно перенаправляется на домашнюю страницу.Каждый URL-адрес абсолютно одинаковый / одинаковый.Единственное отличие в .htaccess:

Мой сайт:

Options +FollowSymLinks
RewriteEngine On

# GoDaddy Requires -MultiViews
Options -Multiviews
RewriteBase /

RewriteRule ^([a-zA-Z0-9-]+/?)$ $1.php

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9-]+) index.php?page=$1 [NC]

Старый сайт Drupal:

    Options +FollowSymLinks
    RewriteEngine On

    RewriteBase /

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} !=/favicon.ico
    RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

Это действительно расстраивает.Сейчас это около 700 уникальных посетителей в день и 500 из них попадают на домашнюю страницу, когда около 80% из них должны были попасть на страницу, отличную от поискового изображения в Google.Есть идеи, почему это происходит?

- Я не думаю, что причина в том, что он направлялся в / node / 59 (узлы вместо указанных путей).Я включил чистые URL, и он перенаправляет на домашнюю страницу для каждого искомого изображения, что много.

Ответы [ 2 ]

0 голосов
/ 16 декабря 2011

Вы можете попытаться раскомментировать и изменить следующую строку в файле sites / default / settings.php.

# $base_url = 'http://www.example.com';  // NO trailing slash!

Это позволило решить проблемы, с которыми я столкнулся при перемещении сайта с локального сайта разработки на удаленный рабочий сайт. Удачи!

0 голосов
/ 14 декабря 2011

Ваш .htaccess выглядит нормально, я не думаю, что это как-то связано с ним.

То, что вам нужно, это какой-то скрипт на этом сайте, который проверяет наличие «действительного» реферера, или я подозреваю, что вы загружаете какой-то Javascript на следующую вещь:

if (top.location != location) {
     top.location.href = document.location.href ;
} 

Удали это. Это код перебора фреймов, и он (ужасная) практика на протяжении многих лет в веб-разработке, но он не служит какой-либо цели.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...