Difference between pages "Web-server-stack" and "SEO"

From Funtoo
(Difference between pages)
Jump to navigation Jump to search
 
m
 
Line 1: Line 1:
[https://en.wikipedia.org/wiki/Search_engine_optimization Seo] stands for search engine optimization.  This page is dedicated to helping improve your page rank on search engines.


== Pre-install considerations ==
== Domains ==
=== ssl ===
When selecting a domain name, try to choose a short domain name, omitting words like "the" the longer the url, the harder it is to remember, and this affects page rank.
Ssl [http://en.wikipedia.org/wiki/Wildcard_certificate wild card certificates] can use the same certificate to cover several subdomain names.  As in https://wiki.funtoo.org https://www.funtoo.org https://forums.funtoo.org can all use the same certificate.  https://funtoo.org would not be covered under the wildcard, so [[User:Threesixes|Threesixes]] ([[User talk:Threesixes|talk]]) suggests using http://domain.tld as a http navigation splash page directory.  All that is required to setup a ca signed ssl certificate is an email on the server.  https://www.startssl.com offers free ssl ca certificates, though there are several other certificate [http://en.wikipedia.org/wiki/Certificate_authority#Providers providers].  Many web apps require you set your URL & will have problems if your URL is set to http://, rather than https://


=== sockets vs tcp stack ===
http://www.yes.com is excellent
Sockets have less overhead but can not be shared across jails, or to other machines. Tcp stack has more overhead but is far more flexible.
http://www.nooooooooooooooo.com is bad....


=== Email Servers ===
Domain registration duration impacts SEO, if you intend to have the site a long time, register several years rather than a short period of time, as this will improve SEO.
* {{Package|mail-mta/postfix}}  <-- suggested
* {{Package|mail-mta/ssmtp}}
* {{Package|mail-mta/exim}}
* {{Package|mail-mta/sendmail}}
* {{Package|mail-mta/nullmailer}}


=== FTP Servers ===
=== Canonical Urls ===
It is common practice to use FTP servers to host files for downloading.
your sites urls should have 1 or the other url re-writing, and 301 permanent redirecting so search engines do not see duplicate content.  You are not penalized for url length by adding a www. subdomain.


* {{Package|net-ftp/vsftpd}} <-- suggested
<console>###i## curl -I http://funtoo.org/Welcome</console>
* {{Package|net-ftp/proftpd}}
* {{Package|net-ftp/pure-ftpd}}
* {{Package|net-ftp/qshare}}


== Webserver ==
<console>###i## curl -I http://www.funtoo.org/Welcome</console>
Web servers come in several varieties.  The most common stack is known as LAMP which stands for linux apache mysql php. [[User:Threesixes|Threesixes]] ([[User talk:Threesixes|talk]]) suggests setting up the web server stack by selecting the database first, then scripting language second, and web server 3rd.


=== Databases ===
==== php? ====
* {{Package|dev-db/mysql}}
Question marks are bad.  Most search engines freak out about indexing anything past a ? so use url rewrites to remove index.php? and leave just site.com/Main_Page


mariadb is a drop in replacement for mysql
==== Url spaces ====
* {{Package|dev-db/mariadb}} <-- suggested
You should prefer - over _ to represent spaces.  MediaWiki is flawed in design preferring _ over -.  This is an older SEO problem, yet it still persists in affecting your page ranking.  [[web-server-stack]] is an example of an SEO friendly url with spaces.


percona is a drop in replacement for mysql
=== Server Speed ===
* {{Package|dev-db/percona-server}}
How fast your page loads significantly impacts seo.  Installing a caching reverse proxy, and testing that it hits close to 100% of the time is a good idea.  It prevents your server from rebuilding pages, hitting the processor, and also speeds up page delivery to move the bottle neck from the php building to the internet connection speed.  see: {{Package|www-servers/varnish}} & [[Web-server-stack#Benchmarking]]


* {{Package|dev-db/postgresql-server}}
=== Meta Description/Keywords/Tags ===
* {{Package|dev-db/sqlite}}
Meta information is parsed directly by search engines.  with these in place they will be displayed rather than the initial text of your canonical landing page.


=== Languages ===
==== Dublin core ====
* {{Package|dev-lang/php}} <-- suggested
Dublin core is a metadata system that produces details for search engines to discover such as authors, & publication dates.  many sites generate this meta information dynamically.
* {{Package|dev-lang/perl}}
* {{Package|dev-lang/python}}


=== Web Servers ===
=== External Links ===
* {{Package|www-servers/apache}}
Posting links around is ok so long as it is organic, and not spammy.  addthis share widgets improve SEO as they produce many backlinks that are not a bot dumping anywhere, and everywhere.  addthis produces twitter/facebook/g+/redit etc share links, and has an analytic service.
* {{Package|www-servers/cherokee}}
* {{Package|www-servers/nginx}} <-- suggested
* {{Package|www-servers/tengine}}
* {{Package|www-servers/lighttpd}}


=== SiteMaps & robots.txt ===
Sitemaps generate xml pages that tell crawlers about your sites content pages, and robots.txt tell crawlers about pages they're not allowed to index.  In a few iterations ill look up how to make a robots that allows everything, as if its not even there, and an external site map generating service.


=== SSL Termination, Reverse Proxies, & load balancing ===
=== Analytics ===
Reverse proxies are useful, some cache static data, and shuck out cached pages rather than hitting the web server.  Some pass requests to backend nodes high availability clustering your website, some web servers have this functionality built in.
Analytics tell you information about your websites users.  Some analytics services enhance seo, others are just informative.
http://www.google.com/analytics/
https://www.quantcast.com


* {{Package|www-servers/nginx}}
piwik is server side analytics.
* {{package|net-misc/stunnel}}
* {{package|www-servers/pound}} <-- suggested for ssl termination & load balancing
* {{Package|www-servers/varnish}} <-- suggested for caching to reduce power consumption & reduce the need of constantly rebuilding pages
* {{Package|net-proxy/squid}}


== Post install ==
===testing, and evaluating===
There are several considerations to take into account with a web server install, such as setting up an email server, setting up a firewall, firewalling web applications, and dynamically firewalling attackers.
==== free analysis ====
* http://www.webrankpage.com/
* http://www.seomastering.com/ (shows estimated page value in USD)
* http://seositecheckup.com/ (throttled to 1 check every 30 minutes)
* http://www.site-seo-analysis.com/
* http://www.seoworkers.com/tools/analyzer.html


=== Firewalls ===
==== free with required registration ====
* {{Package|net-firewall/nftables}}
* http://www.site-analyzer.com/
* {{Package|net-firewall/iptables}} <-- suggested
*http://www.wpromote.com/seo/seo-audit-tool (shows which pages are ranked)
* {{Package|net-firewall/firewalld}}
* {{Package|net-firewall/ufw}}


=== Dynamic Firewalling ===
==== pay with free trial ====
* {{Package|app-admin/sshguard}} <-- suggested
free 1 site per week testing
* {{Package|net-analyzer/fail2ban}}
* http://www.woorank.com/


=== Webapp Firewalls ===
==== unsorted goodies ====
 
*http://www.webpagetest.org/
Apache has an option for webapplication firewalling.  as far as [[User:Threesixes|Threesixes]] ([[User talk:Threesixes|talk]]) can tell this passes login errors & excessive site fuzzing to logs for fail2ban/sshguard to deal with.
*http://www.seocentro.com/tools/seo/seo-analyzer.html
https://github.com/nbs-system/naxsi is a web app firewall for nginx.
*http://www.seoptimer.com/
 
*https://www.found.co.uk/seo-tool/
=== Benchmarking ===
*https://zadroweb.com/seo-auditor/
It's a good idea to benchmark your system, server, & websites.  There are several tools to assist you in doing this.
*https://marketing.grader.com/
 
*http://www.alexa.com/
* http://toolbar.netcraft.com/site_report?url=undefined#last_reboot
* http://www.showslow.com/
* http://yslow.org/
* http://getfirebug.com/
* {{Package|app-admin/apache-tools}}
* {{Package|app-benchmarks/sysbench}}
* {{Package|app-benchmarks/phoronix-test-suite}}
* {{Package|app-benchmarks/iozone}}
* {{Package|app-benchmarks/piozone}}
* {{Package|app-benchmarks/siege}}
* {{Package|app-benchmarks/ramspeed}}
* {{Package|app-benchmarks/jmeter}}

Revision as of 13:24, January 18, 2015

Seo stands for search engine optimization. This page is dedicated to helping improve your page rank on search engines.

Domains

When selecting a domain name, try to choose a short domain name, omitting words like "the" the longer the url, the harder it is to remember, and this affects page rank.

http://www.yes.com is excellent http://www.nooooooooooooooo.com is bad....

Domain registration duration impacts SEO, if you intend to have the site a long time, register several years rather than a short period of time, as this will improve SEO.

Canonical Urls

your sites urls should have 1 or the other url re-writing, and 301 permanent redirecting so search engines do not see duplicate content. You are not penalized for url length by adding a www. subdomain.

root # curl -I http://funtoo.org/Welcome
root # curl -I http://www.funtoo.org/Welcome

php?

Question marks are bad. Most search engines freak out about indexing anything past a ? so use url rewrites to remove index.php? and leave just site.com/Main_Page

Url spaces

You should prefer - over _ to represent spaces. MediaWiki is flawed in design preferring _ over -. This is an older SEO problem, yet it still persists in affecting your page ranking. web-server-stack is an example of an SEO friendly url with spaces.

Server Speed

How fast your page loads significantly impacts seo. Installing a caching reverse proxy, and testing that it hits close to 100% of the time is a good idea. It prevents your server from rebuilding pages, hitting the processor, and also speeds up page delivery to move the bottle neck from the php building to the internet connection speed. see: www-servers/varnish & Web-server-stack#Benchmarking

Meta Description/Keywords/Tags

Meta information is parsed directly by search engines. with these in place they will be displayed rather than the initial text of your canonical landing page.

Dublin core

Dublin core is a metadata system that produces details for search engines to discover such as authors, & publication dates. many sites generate this meta information dynamically.

External Links

Posting links around is ok so long as it is organic, and not spammy. addthis share widgets improve SEO as they produce many backlinks that are not a bot dumping anywhere, and everywhere. addthis produces twitter/facebook/g+/redit etc share links, and has an analytic service.

SiteMaps & robots.txt

Sitemaps generate xml pages that tell crawlers about your sites content pages, and robots.txt tell crawlers about pages they're not allowed to index. In a few iterations ill look up how to make a robots that allows everything, as if its not even there, and an external site map generating service.

Analytics

Analytics tell you information about your websites users. Some analytics services enhance seo, others are just informative. http://www.google.com/analytics/ https://www.quantcast.com

piwik is server side analytics.

testing, and evaluating

free analysis

free with required registration

pay with free trial

free 1 site per week testing

unsorted goodies