42 / 42 / 9
Регистрация: 27.06.2010
Сообщений: 91
1

Гугл аналиникс и дублированный контент - URL duplicate meta descriptions upper case

09.03.2011, 13:18. Показов 1300. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Гугл придирается к одинаковым урлам моего проекта. Ему не нравится то что в урле присудствуют большие буквы.

/CLUBS/?CLUB=101&SUBCLUBCATEGORY=-1
/clubs/?club=101&subclubcategory=-1

/CLUBS/?CLUB=71&SUBCLUBCATEGORY=-1
/clubs/default.aspx?club=71&subclubcategory=-1

....

Решил это исправить так:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void Application_BeginRequest(object sender, EventArgs e)
        {
        
            // If upper case letters are found in the URL, redirect to lower case URL.
            if (Regex.IsMatch(HttpContext.Current.Request.Url.ToString(), @"[A-Z]") == true)
            {
                string LowercaseURL = HttpContext.Current.Request.Url.ToString().ToLower();
 
                Response.Clear();
                Response.Status = "301 Moved Permanently";
                Response.AddHeader("Location", LowercaseURL);
                Response.End();
            }
}|
После чего я получил маленькие буквы у всех урлов, но в урле добавилось, default.aspx:

/pages/articles/reasonstotrain/default.aspx?p=2

вместо :

/pages/articles/reasonstotrain/?p=2

есть мысли как от этого избавится ?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.03.2011, 13:18
Ответы с готовыми решениями:

Дублированный контент
Для существующего сайта делалась новая версия (по ширине просто большая). Контент автоматом...

дублированный контент
ДВС! Помогите, может у кого опыт имелся, у меня есть сайт, с уникальным текстом, написанным...

Upper case и Lower case
Здравствуйте!!! Помогите пожалуйста... как прописать функции Upper case и Lower case ? ...

In the given string convert the text that is not taken in brackets to upper case
In the given string convert the text that is not taken in brackets to upper case (you don’t need to...

9
CEO
Эксперт С++
2258 / 1248 / 57
Регистрация: 16.03.2009
Сообщений: 3,588
09.03.2011, 13:23 2
Цитата Сообщение от levka9 Посмотреть сообщение
/CLUBS/?CLUB=101&SUBCLUBCATEGORY=-1
/clubs/?club=101&subclubcategory=-1
/CLUBS/?CLUB=71&SUBCLUBCATEGORY=-1
/clubs/default.aspx?club=71&subclubcategory=-1
ужас, я б за такие урлы вообще убил для повышения оценки УРЛа используйте человеческие названия (маскируйте параметры), например clubs/BestClubs/DrinkPartyBar
Как этого добиться - читаем Маршрутизация в ASP.NET
0
42 / 42 / 9
Регистрация: 27.06.2010
Сообщений: 91
09.03.2011, 13:42  [ТС] 3
Alligieri,

Спасибо о маршрутизации не знал, сейчас попробую. Вроде она лучше чем "перезаписи URL-адресов".
0
86 / 85 / 11
Регистрация: 12.07.2009
Сообщений: 465
09.03.2011, 16:11 4
С ней намного проще =)
0
CEO
Эксперт С++
2258 / 1248 / 57
Регистрация: 16.03.2009
Сообщений: 3,588
09.03.2011, 18:25 5
Цитата Сообщение от Vegas Посмотреть сообщение
С ней намного проще =)
Да это отличная новая фича в ASP.NET 4, когда узнал что она будет, захотелось сказать - "дождались"
0
42 / 42 / 9
Регистрация: 27.06.2010
Сообщений: 91
10.03.2011, 13:37  [ТС] 6
Alligieri,

С раутингом разобрался - спасибо.

Вот только проблему мою это не решит а добавит. Сейчас гугл сможет заходить по адресу :

/CLUBS/?CLUB=101&SUBCLUBCATEGORY=-1
/clubs/?club=101&subclubcategory=-1
/clubs/club/subclubcategory

на одну и туже страницу, что не есть гуд.

Нужно было мне с самого начала так делать сейчас уже поздно менять параметры на подкатегории.
0
86 / 85 / 11
Регистрация: 12.07.2009
Сообщений: 465
10.03.2011, 16:02 7
Цитата Сообщение от levka9 Посмотреть сообщение
Вот только проблему мою это не решит а добавит. Сейчас гугл сможет заходить по адресу
Решит, проверенно..

C#
1
2
3
4
5
6
7
8
9
10
11
12
void Application_BeginRequest(object sender, EventArgs e)
    {
        string urlRequest = Request.RawUrl.ToString().ToLower();
        if (urlRequest.Contains("news.aspx") || urlRequest.Contains("page.aspx"))
        {
            string newUrl = OldPagesSEOsaver.GetNewURL(urlRequest);
            if (!string.IsNullOrEmpty(newUrl))
            {
                Response.RedirectPermanent(newUrl, true);
             }
        }
    }
0
42 / 42 / 9
Регистрация: 27.06.2010
Сообщений: 91
10.03.2011, 17:18  [ТС] 8
Vegas,

можно посмотреть реализацию класса OldPagesSEOsaver ?
0
86 / 85 / 11
Регистрация: 12.07.2009
Сообщений: 465
10.03.2011, 20:02 9
Цитата Сообщение от levka9 Посмотреть сообщение
Vegas,

можно посмотреть реализацию класса OldPagesSEOsaver ?
Там я разбираю к какому файлу запрос и с какими параметрами.
Из этого составляю новый адрес соответствующий правилам маршрутизации.
0
6 / 6 / 0
Регистрация: 10.03.2011
Сообщений: 10
11.03.2011, 18:47 10
По-моему проще сделать по старинке - установить модуль IIS URL Rewrite на сервер. Там есть стандартное правило для преобразования url в нижний регистр, ничего вручную писать не нужно. Делает 301 редирект. И как уже сказали, раз заботят проблемы SEO, то урлы надо сделать понятными для человека.
0
11.03.2011, 18:47
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.03.2011, 18:47
Помогаю со студенческими работами здесь

Error: duplicate case label
В нижеприведённом примере, выдаёться ошибка Error: duplicate case label на строке: ...

Вложенный switch выдает ошибку при компиляции Duplicate Case
int q; char v; //... switch(q){ case 0: { switch(v){ case '0'||'1'||'2': {}...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru