Skip to content

Commit

Permalink
Add prerender.io to Static doc
Browse files Browse the repository at this point in the history
  • Loading branch information
Kirbeerus committed Jan 7, 2025
1 parent 171ee5a commit 94882e1
Showing 1 changed file with 28 additions and 0 deletions.
28 changes: 28 additions & 0 deletions content/doc/applications/static/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,34 @@ RewriteRule ^ - [L]
RewriteRule ^ /index.html
```

## Prerendering with Prerender.io

Check failure on line 69 in content/doc/applications/static/_index.md

View workflow job for this annotation

GitHub Actions / vale

[vale] content/doc/applications/static/_index.md#L69

[Vale.Spelling] Did you really mean 'Prerendering'?
Raw output
{"message": "[Vale.Spelling] Did you really mean 'Prerendering'?", "location": {"path": "content/doc/applications/static/_index.md", "range": {"start": {"line": 69, "column": 4}}}, "severity": "ERROR"}

When you use and SPA framework, you are using Client side rendering.
One of the problem of this method is poor SEO as search engine crawler have more difficulty reading the content of this type of application.

Check notice on line 72 in content/doc/applications/static/_index.md

View workflow job for this annotation

GitHub Actions / vale

[vale] content/doc/applications/static/_index.md#L72

[Google.Acronyms] Spell out 'SEO', if it's unfamiliar to the audience.
Raw output
{"message": "[Google.Acronyms] Spell out 'SEO', if it's unfamiliar to the audience.", "location": {"path": "content/doc/applications/static/_index.md", "range": {"start": {"line": 72, "column": 43}}}, "severity": "INFO"}
To avoid this problem, you can try to prerender your application.

Check failure on line 73 in content/doc/applications/static/_index.md

View workflow job for this annotation

GitHub Actions / vale

[vale] content/doc/applications/static/_index.md#L73

[Vale.Spelling] Did you really mean 'prerender'?
Raw output
{"message": "[Vale.Spelling] Did you really mean 'prerender'?", "location": {"path": "content/doc/applications/static/_index.md", "range": {"start": {"line": 73, "column": 39}}}, "severity": "ERROR"}

If you want to Prerender your application on Clever Cloud, one solution is to use [Prerender.io](https://prerender.io/).

Check failure on line 75 in content/doc/applications/static/_index.md

View workflow job for this annotation

GitHub Actions / vale

[vale] content/doc/applications/static/_index.md#L75

[Vale.Spelling] Did you really mean 'Prerender'?
Raw output
{"message": "[Vale.Spelling] Did you really mean 'Prerender'?", "location": {"path": "content/doc/applications/static/_index.md", "range": {"start": {"line": 75, "column": 16}}}, "severity": "ERROR"}
To use it with our static applications, you need a `.htaccess` file like this at the root of your project:

Check warning on line 76 in content/doc/applications/static/_index.md

View workflow job for this annotation

GitHub Actions / vale

[vale] content/doc/applications/static/_index.md#L76

[Google.We] Try to avoid using first-person plural like 'our'.
Raw output
{"message": "[Google.We] Try to avoid using first-person plural like 'our'.", "location": {"path": "content/doc/applications/static/_index.md", "range": {"start": {"line": 76, "column": 16}}}, "severity": "WARNING"}

```ApacheConf
<IfModule mod_headers.c>
RequestHeader set X-Prerender-Token "<YOUR_TOKEN>"
RequestHeader set X-Prerender-Version "[email protected]"
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On
<IfModule mod_proxy_http.c>
RewriteCond %{HTTP_USER_AGENT} googlebot|bingbot|yandex|baiduspider|facebookexternalhit|twitterbot|rogerbot|linkedinbot|embedly|quora\ link\ preview|showyoubot|outbrain|pinterest\/0\.|pinterestbot|slackbot|vkShare|W3C_Validator|whatsapp|redditbot|applebot|flipboard|tumblr|bitlybot|skypeuripreview|nuzzel|discordbot|google\ page\ speed|qwantify|bitrix\ link\ preview|xing-contenttabreceiver|google-inspectiontool|chrome-lighthouse|telegrambot [NC,OR]
RewriteCond %{QUERY_STRING} _escaped_fragment_
RewriteCond %{REQUEST_URI} ^(?!.*?(\.js|\.css|\.xml|\.less|\.png|\.jpg|\.jpeg|\.gif|\.pdf|\.doc|\.txt|\.ico|\.rss|\.zip|\.mp3|\.rar|\.exe|\.wmv|\.doc|\.avi|\.ppt|\.mpg|\.mpeg|\.tif|\.wav|\.mov|\.psd|\.ai|\.xls|\.mp4|\.m4a|\.swf|\.dat|\.dmg|\.iso|\.flv|\.m4v|\.torrent|\.ttf|\.woff|\.svg))
RewriteRule ^(index\.html|index\.php)?(.*) http://service.prerender.io/%{REQUEST_SCHEME}://%{HTTP_HOST}$2 [P,END]
</IfModule>
</IfModule>
```

## Apache Configuration with `CC_WEBROOT`

If you set the `CC_WEBROOT = /<web-folder>` environment variable, make sure you put your `.htaccess` file at the root of your `/<web-folder>`. This is where Apache will look for directives when you deploy an application in a Static runtime.
Expand Down

0 comments on commit 94882e1

Please sign in to comment.