LAMP (Linux Apache2 MySQL PHP)#
UNIX Linux Grundlagen#
- ls -la // listet alle Dateien auf auch "versteckte" und zeigt Sym-Links an
Linux Debian Installation#
- wir installieren ein normales Debian (testing)
- Netinstall Image
- Von ThomasBayen, der aus dem Debian Installations Manual und letztlich erfunden hat es das Linux Journal.
die Dienste installieren
>#phpmyadmin wir zu verwaltung von mysql verwendet >$ apt-get install apache2 php5 libapache2-mod-php5 php-pear libapache2-mod-perl2 mysql-server phpmyadmin
in der schule brauche ich einen proxy für apt das geht so http_proxy=http://username:password@host:port/ export http_proxy
module des apache2 aktivieren // linken von /etc/apache2/mods-available/ nach /etc/apache2/mods-enabled/
>$ a2enmod userdir && a2enmod perl && a2enmod cgi && a2enmod php5 && a2enmod ssl
>$ cd /etc/apache2/
userdir#
#nano mods-enabled/userdir.conf <IfModule mod_userdir.c> UserDir public_html UserDir disabled root <Directory /home/*/public_html> AllowOverride FileInfo AuthConfig Limit Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec </Directory> #für CGI <Directory /home/*/public_html/cgi-bin> #cgi ausführen in cgi-bin AddHandler cgi-script .cgi .sh .pl Options +ExecCGI </Directory> </IfModule> ## nun ist cgi im Apache von jedem user gestatet im cgi-bin ordner seines webauftrittes
>$ apache2ctl restart
>$ adduser webtest
>$ su - webtest >$ mkdir -p public_html/cgi-bin >$ cd public_html/cgi-bin
ein kleines Test script # -- > Premature end of script headers <<--- wer das bekommt in seiner /var/log/apache2/error.log # der hat 1. sein script nicht ausfürbar gemacht 2. den cgi handler nicht richtig configuriert 3. Content-type: text/plain bsp. ist nicht #gesetzt in perl 2x \n\n in der shell echo && echo sowie 2 leerstellen um Body vom Header zu trennen ## /home/webtest/public_html/cgi-bin/test.pl #!/usr/bin/perl -w # ^ dies ist wichtig für alle Scripte print "Content-type: text/plain\n\n"; $a = 1; $b = 4; $c = $a + $b; $d = $a . $b; print "$c\n"; print "$d\n";
und es geht --> einfach http://localhost/~webtest/cgi-bin/test.pl eingeben und kucken
phpMyAdmin#
>$ dpkg-reconfigure phpmyadmin
- apache2 neustarten
## php geht von hause aus und um den phpmyadmin zu konfigurieren tippen wir im browser http://localhost/phpmyadmin/scripts/setup.php ## und einstellen http://localhost/phpmyadmin/ kann dann die datenbank angesehen werden
MySQL#
# mysql konfigurieren ##/etc/mysql/my.cnf von old_passwords = 1 nach #old_passwords = 1 alles was mit log anfängt auskommentieren -> wir brauchen kein LOG ## angeben wo gespeichert werden soll datadir = /var/lib/mysql ## wenn geändert muss man ## >$ mysql_install_db ## aufrufen
SSL unter dem Apache2#
>$aptitude install openssl # generieren eines privaten Serverschlüssels. openssl genrsa -out server.key -des3 1024 #generieren einer Zertifikatsanfrage mit dem privaten Schlüssel openssl req -new -key server.key -out server.csr #erstelle ein server.key openssl req -new -x509 -days 1460 -key server.key -out server.crt ## da wir faul sind immer ein pw einzutippen einfach einbauen openssl rsa -in server.key -out server_neu.key << in die default tragen wir nun ein >> SSLEngine on SSLCertificateFile /etc/apache2/ssl2/server.crt SSLCertificateKeyFile /etc/apache2/ssl2/server_neu.key << ENDE >> -- nun geht ssl über localhost -- *
Links:
Author: JensKapitza
Add new attachment
Only authorized users are allowed to upload new attachments.