WORK IN PROGRESS

Well it’s time again to setup a new hosting box and as time goes by I’m goint to try out something new again. So up until now it was set into stone that I would use Debian as the OS but I got more and more fed up with old and outdated packages/versions. I looked for alternatives and well I ended up choosing freebsd over ubuntu server and centos because of ZFS!! ZFS is the server filesystem to rule em all!!! I won’t go into the details why but if you’re interested I greatly suggest taking a look. Freebsd 10 makes it fairly easy to setup the system with zfs as root file system. Well next will be installing a admin panel to make hosting some websites easier. So this tutorial is about setting up a webstack with:

so lets start!

Install all our needed packages

(I use pkg-ng for this)

okay now edit /etc/rc.conf and add the following

then copy the php.ini to the correct location with

a quick look with „ps -faux“ show’s that php-fpm is running fine… good so faar

MySQL

disable the strict mode since froxlor doesen’t work with that one yet 🙁

now start up our mysql server

now change the password for the MySQL root user

Nginx

open up in your favorit editor

and put the following in it

Now create the missing directories

now create the nginx config for the panel

and insert

if you get a

Don’t worry, that’s normal since nginx wasn’t started yet and the directory wasn’t created yet =) but our’s syntax is ok so all is good! ok let’s get us some admin panel!

now restart php-fpm and nginx and hope we didn’t fuck up something :O

Browse to your froxlor installation and if everything went fine you should see the Froxlor webpage! Proceed with the Froxlor installation as asked! After the successful install let’s configure the panel since I don’t like the default path froxlor uses and to adhere FreeBSD convention user installed stuff should be placed in /usr/local/

Now Login to the admin panel and navigate to

and set the Home directory to

hit save and then open up

Change Webserver vHost configuration file/dirname to

Webserver diroptions configuration file/dirname to

Webserver htpasswd dirname to

Logfiles directory to

Webserver reload command to

Path to fastcgi_params file to

again, save the settings. If you wan’t to enable SSL then you should set Configure the allowed SSL ciphers to

and get yourself a valid SSL certificate (I recommend StartSSL) which provides them for free. Next step is configuring pfp-fpm and to do this enable php-fpm in the Setting panel, hit save and then klick on Settings to the right of php-fpm Configuration directory of php-fpm

Configuration Alias-directory of php-fpm

Temp directory

Global PEAR directories

FastCGI IPC directory

php-fpm restart command

Process manager control (pm)

The number of child processes

The number of child processes created on startup

The desired minimum number of idle server processes

The desired maximum number of idle server processes

Requests per child before respawning

Configure fpm to actually load the config files from Froxlor

open up

and put the pollowing at the end of the file

 

Postfix & Dovecot

 

Naja mal wieder bissl rumgebastelt … nachdem mit XAMPP übelst auf den nerv ging hab ich mal den nativen php Support von Mac ausgegraben. Unter 10.6.6 ist ja ehh schon php 5.3.3 dabei was ich recht überraschend fand, aber leider viel dann auf dass die mcrypt extension fehlte und kein freetype support in der gd extension drin war… Nach bissl rumsuchen und fummeln hab ich’s dann recht easy zum laufen gebracht. Um mir anderen das Leben zu erleichtern sollte ich das ganze nochmal brauchen hier nen kleines Howto!

Zunächst erstmal alle Sourcen besorgen die nötig sind.

Mac OS X Install DVD -> Xcode und Devtools installieren dabei den X11 Support nicht vergessen sonst giebts später Probs.

libjpeg

libpng

libmcrypt (nicht mcrypt sonder LIBMCRYPT!!!)

pcre

php

die ganzen Sourcen in ein Verzeichnis der Wahl entpacken, bei mir war das $Home/src

Ein Paar Compilerflags zur optimierung zu Anfang!

libmcrypt bauen

danach lib jpeg und libpng jeweils mit

zuletzt noch die PCRE Lib

Nun können wir uns an PHP machen, dieses Konfigurieren wir mit:

nach dem erfolgreichen configure könnt ihr das übliche laufen lassen

danach habe ich mir sicherheitshalber noch die alten binaries abgesichert, falls doch was schief gelaufen ist

und Action!

Viel Spass mit einer nun vollwertigen php Installation 😉

Jaja is nun endlich geschafft der Serverumzug. Nachdem ich ne Pause vom lernen brauchte, hab ich mich nochmal an die finale Konfiguration des neuen Servers gesetzt.

Wie nicht anders zu erwarten bin ich dabei natürlich wieder auf das ein oder andere Problem gestoßen. Seis nen nicht installiertes sql modul für den ftp server oder eben dass mod_rewrite mal wieder nicht so will wie es soll.

Wem das auch so geht dem sei folgende Apache config an Herz gelegt.

in der Datei

/etc/apache2/httpd.conf

das bestehende durch folgendes ändern

DocumentRoot /var/www/
<Directory />
Order allow,deny
deny from all
</Directory>

<Directory /var/www>
Options +FollowSymLinks -MultiViews -Indexes
AllowOverride All
Order allow,deny
allow from all
</Directory>

Ich hoffe ich konnte damit das ein oder andere graue Haar verhindern.