Difference between pages "Web-server-stack" and "Template:SupportBlurb"

From Funtoo
(Difference between pages)
Jump to navigation Jump to search
 
 
Line 1: Line 1:
 
[[Support Funtoo]] and help us grow! '''Donate $15 per month and get a free SSD-based [[Funtoo Hosting|Funtoo Virtual Container]]. 25 spots left.
== Pre-install considerations ==
=== ssl ===
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 ===
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.
 
=== Email Servers ===
* {{Package|mail-mta/postfix}}
* {{Package|mail-mta/ssmtp}}
* {{Package|mail-mta/exim}}
* {{Package|mail-mta/sendmail}}
* {{Package|mail-mta/nullmailer}}
 
=== FTP Servers ===
It is common practice to use FTP servers to host files for downloading.
 
* {{Package|net-ftp/vsftpd}}
* {{Package|net-ftp/proftpd}}
* {{Package|net-ftp/pure-ftpd}}
* {{Package|net-ftp/qshare}}
 
== Webserver ==
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 ===
* {{Package|dev-db/mysql}}
mariadb is a drop in replacement for mysql <-- default in Funtoo
* {{Package|dev-db/mariadb}}
percona is a drop in replacement for mysql
* {{Package|dev-db/percona-server}}
* {{Package|dev-db/postgresql-server}}
* {{Package|dev-db/sqlite}}
 
=== Languages ===
* {{Package|dev-lang/php}}
* {{Package|dev-lang/perl}}
* {{Package|dev-lang/python}}
 
=== Web Servers ===
* {{Package|www-servers/apache}}
* {{Package|www-servers/cherokee}}
* {{Package|www-servers/nginx}}
* {{Package|www-servers/tengine}}
* {{Package|www-servers/lighttpd}}
 
 
=== Reverse Proxies & load balancing ===
Reverse proxies are useful, they cache static data, and shuck out cached pages rather than hitting the web server.  Several web servers have this functionality built in.
* {{Package|www-servers/varnish}}
* {{Package|net-proxy/squid}}
 
== Post install ==
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.
 
=== Firewalls ===
* {{Package|net-firewall/nftables}}
* {{Package|net-firewall/iptables}}
* {{Package|net-firewall/firewalld}}
* {{Package|net-firewall/ufw}}
 
=== Dynamic Firewalling ===
* {{Package|app-admin/sshguard}}
* {{Package|net-analyzer/fail2ban}}
 
=== Benchmarking ===
It's a good idea to benchmark your system, server, & websites.  There are several tools to assist you in doing this.
 
* http://yslow.org/
* http://getfirebug.com/
* {{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 15:38, January 20, 2015

Support Funtoo and help us grow! Donate $15 per month and get a free SSD-based Funtoo Virtual Container. 25 spots left.