Falcon Space. SEO (search engine optimization)

Main SEO features

  • Generation Sitemap.xml
  • Management robots.txt
  • Canonization URL
  • the data markup
  • CNC
  • 404
  • Bread crumbs
  • Managing Title, Description, Keywords

Sitemap.xml

Sitemap.xml generated in the falcon_sitemap procedure - you can change this procedure for yourself. To get this feature, you need to update/create falcon_sitemap, rs_sitemap_getFile, and write a redirect rule in web. config

<rule name="Sitemap.xml" stopprocessing="true">
<match url="(.*)sitemap\.xml"></match>
<action type="Redirect" url="https://falcon.web-automation.ru/Controls/Resource/GetFile?code=sitemap"></action>
</rule> 

Note: the domain is passed in the as_domain parameter to the procedure falcon_sitemap

Robots.txt

Robots.txt -a file that sets instructions for search engines how to index pages on the site.

Robots management is implemented through the mechanism of uploaded files. (see the corresponding section about Resources).

By default, the static parts of these files are implemented as settings robots.txt in System elements (System SQL -/home/pysSP).

For more complex generation, change the stored procedure for the types of uploaded files for the code robots.

You can also add the following rules to the rewrites section in the web.config file to make standard addresses available for robots

<rule name="Robots" stopprocessing="true">
<match url="(.*)robots\.txt"></match>
<action type="Redirect" url="https://falcon.web-automation.ru/Controls/Resource/GetFile?code=robots"></action>
</rule> 

Micro mMarkup allows search engines to better understand what is located on the page and improves search results.

Additional elements appear in the site snippet in the search results.

To enable micro markup, specify the schema in GetLayout

http://schema.org/WebPage’ SchemaTypeBody

If it is specified, then the body has a schema (in General, you can use http://schema.org/WebPage).

The key of the schema:

Markup validators:

Detailed article:

Markup generators

Og generator;(the data markup Openpraph for social networks)

https://a.pr-cy.ru/tools/open-graph-generator/

Generating micro markup for search engines (Schema.org)

https://technicalseo.com/tools/schema-markup-generator/

Note:

  • To insert micro markup in a catalog, use HeadHection and BodyBottomSection, as well as custom markup for catalog pages.

Examples for typical pages: 

< script type="application/ld+json">
{
    "@context": "https://schema.org/",
    "@type": "WebPage",
    "name": "Falcon Space - Web-applications for business",
    "thumbnailUrl": "https://falcon.web-automation.ru/content/images/falcon.png",
    "description": "Create your own business web-applications on Falcon Space with SQL/Bootstrap"
}

You don't need to make the micro markup for pages static, just place it in the CSS script block. 

You can use the SELECT 2 parameter HeadSection in the SQL procedure of the Page to insert the desired dynamic markup. 

Breadcrumbs

Breadcrumbs are links at the top of the page that determine the logical path to this page from the beginning of the site. 

Breadcrumbs defines the project structure.

They are written in the SQL of each page. 

For directories, they are generated according to the directory category structure

Breadcrumbs have micro-markup (to do this, you need to include micro-markup in the webpage in GetLayout)

http://schema.org/WebPage’ SchemaTypeBody

Managing tags Title, Meta Description, Meta Keywords, h1

These elements are managed via the SQL of each individual page. 

For a directory, they are generated via stored directory procedures.

Human-readable URL 

You can set your own exact URL (page code) for each page, thereby including the main keywords. 

In the catalog, addresses are generated based on the hierarchy of categories and product names, which makes it easy to understand the address of which product is loaded and in which category it is located.

Also in the catalog, in addition to the category, filter names and values are included in the address. Each page is static for search engines and can be indexed (loading without using JS)

Page 404

Create a page with the code notfound (by default, it is already in the database). The page will give the HTTP status 404. 

Note: in reg.ru by default the 404 status is intercepted and transferred to the 404 page from reg.ru. To change this rule, add the following rule to web.config: 

<httperrors existingresponse="Replace">
<remove statuscode="404" substatuscode="-1"></remove>
<error statuscode="404" prefixlanguagefilepath="" path="uploads\404.html" responsemode="File"></error>
</httperrors>

With this page 404.html must be a static html file on the server, not a page in Falcon Space

URL canonization

Remove the final slash

<rule name="Remove trailing slash" stopprocessing="true">
    <match url="(.*)/$"></match>
    <conditions logicalgrouping="MatchAll" trackallcaptures="false">
        <add input="{REQUEST_FILENAME}" matchtype="IsFile" negate="true"></add>
        <add input="{REQUEST_FILENAME}" matchtype="IsDirectory" negate="true"></add>
    </conditions>
    <action type="Redirect" url="{R:1}" redirecttype="Temporary"></action>
</rule>

Put everything in lowercase

This rule excludes ajax requests. which stop working due to unnecessary redirects

<rule name="LowerCaseURL" stopprocessing="true">
    <match url="[A-Z]" ignorecase="false"></match>
    <conditions logicalgrouping="MatchAll">
        <add input="{HTTP_X_Requested_With}" pattern="^XMLHttpRequest$" negate="true"></add>
        <add input="{URL}" pattern="[А-Я]" negate="true"></add>
    </conditions>
    <action type="Redirect" url="{ToLower:{URL}}"></action>
</rule>

Remove www

comes from the box. 

Switching to HTTPS

<rule name="Redirect to http" patternsyntax="Wildcard" stopprocessing="true">
    <match url="*" negate="false"></match>
    <conditions logicalgrouping="MatchAny" trackallcaptures="false">
        <add input="{HTTPS}" pattern="off"></add>
    </conditions>
    <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirecttype="Temporary"></action>
</rule>

Additional rules can also be found here - https://forums.iis.net/post/2042212.aspx

Using different languages (localization) and SEO

Use the hreflang meta tags in the HEAD https://habr.com/ru/post/352082/

It is advisable to use subdomains of the main domain as a promotion in different languages (ru.site.com, de.site.com). In this case, the defaultLangID must be set in GetLayout. 

How to SEO 

How to make a correct redirect to the new page address (301 redirect)

To do this, in web. config in the section rules write a rule: 

<rule name="solutionRealty" stopprocessing="true">
    <match url="^home/solution/realty" ignorecase="true"></match>
    <action type="Redirect" url="/list/solutions/realty---9" redirecttype="Permanent"></action>
</rule>

How to set goals in Yandex. Metrica

Details https://yandex.ru/support/metrica/objects/reachgoal.html

In the JS code, enter

in the button click handler

ym(XXXXXX, 'reachGoal', 'TARGET_NAME');

where XXXXX is the counter number. 

How to write a canonical url for a page

To do this, specify the canonical link in editing page parameters in the section Connecting style files: 

<link rel="canonical" href="http://site.ru/statya1">

Note