bin kein linux profi, obwohl ich schon immermal mit debian rumexperientiert habe, also bitte kein fachchinesisch.
was ich gemacht habe und wo ich hin will:
in einer vmware workstation8 habe ich 2 debianinstallationen 8.8.8
eine als server mit apache 2.4.10 und einer joomla-installation mit mysql als datenbank
der andere als client der im internet surft und die mit joomla erstellte seite abrufen soll
aber auf dem client bekomme ich nur die startseite des appache-servers zu sehen, bei der testseite (mini-html-seite mit nem kleinen css) und bei der joomla-seite bekomme ich ein mittlerweile nicht so herzliches "not found" mit angabe das es vom debian apache 2.4.10. kommt den ich installiert habe
ich hab alles schritt für schritt installiert apache mysql und alles also einzelne verzeichnisse unter var www - html htmltest und joomla
dann die confiles einzeln erstellt und mit a2ensite ..conf eingebunden aus dem verzeichnis site-available und mit service apache2 reload den demon neu gestartet
ich hab mich nun mittlerweile durch eine unzahl von foren gelesen auch die apache dokumentation, aber ich werd nicht schlauer.
oft sind folder und files angegeben die nicht existieren wie z.b. httpd.
ich habe auch einen minidns server auf dem server installiert namens dnsmasq , was aber meiner meinung nicht nötig ist, da ich die hauptseite des apachen ja sehe und auch in der fehlermeldung steht das die vom apachen geliefert wird.
also muss der dns es richtig auflösen oder es liegt daran das ich den server direkt mit seiner festen ip anspreche.
ich habe auch versucht alle vhosts in eine datei zuschreiben.
seite disablen mit a2dissite reload conf file änder a2ensite reload
aber das half auch nichts.
tätigkeiten conf-files und alles wird nachgeliefert da copy paste nicht arbeitet zwischen host und vm(hab auch eine endlose anzahl foren dazu gelesen und alles probiert und nichts hilft)
danke für alle nutzbringenden vorschläge im voraus.
p.s. joomla ist für sich selbst noch nen anderes problem
der dateibrowser ist auch nutzlos da man den nicht mit root-rechten starten kann - also alles zu fuss - zum glück hab ich mit dos angefangen
Install doku
open-vm-tools suchen und quelle in resourcelist eintragen
wechsel zu open vm tools da die mit gelieferten vmtools ein gcc verzeichnis haben wollen was da ist aber von den tools nicht erkannt wird
siehe alternative in install open vm tools
bearbeiten der sources.list
/etc/apt/sources.list file.
Code: Alles auswählen
deb http://ftp.debian.org/debian/ jessie main contrib
alternative deb http://ftp.de.debian.org/debian jessie main
Code: Alles auswählen
apt-get install apache2
http://localhost/index.html aufruf workedWebseiten ablegen und aufrufen
Die Inhalte für den Server werden in einem als "document root" bezeichneten Verzeichnis abgespeichert. Dies bedeutet, dass der Apache Webserver dort nach den auszuliefernden (HTML-)Dateien schaut. Bei Apache 2.4 lautet das Verzeichnis:
/var/www/html/
Legt man dort Dateien ab, so können diese mit
http://localhost/ bzw. http://SERVER-IP_ODER_NAME/
im Browser aufgerufen werden. Dort wird bei der Installation des Servers die Seite index.html abgelegt, eine einfache HTML-Testseite, welche jetzt im Browser zu sehen sein sollte.
seite erstellen als 2. test
als index.html speichern
seite erstellt mit hilfe von http://de.html.net/
verzeichnis /var/www/htmltest erstellt
mit touch datei index.html erstellt
mit nano den inhalt schreiben
seitenprogrammierung
Code: Alles auswählen
<html>
<head>
<title>Meine erste Webseite</title>
<link rel=“stylesheet“ type=“text/css“ href=“style1.css“/>
</head>
<body>
<p> Das ist meine erste Homepage! </p>
<h> andere schriftgroesse </h>
<l> andere schriftart </l>
</body>
</html>
stylesheet
mit touch erstellt und nano geschrieben style1.css
Code: Alles auswählen
body {background-color:#FF0000;}
h {font-size:30px;}
l {font-family:courier;}
verzeichnisse htmltest und joomla im verzeichnis /var/www/
Apache2
Konfigurieren des Virtual Host
apache mit virtualhost aufwerten für multiseiten für die default htmlseite, htmltest und dann joomla
wechseln in verzeichnis /etc/apache2/sites-available/
erstellen der dateien index.conf, test.conf und joomla.conf
Code: Alles auswählen
index.conf
<VirtualHost *:80>
ServerName index
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/
<Directory /var/www/html/>
Options Indexes FollowSymLinks MultiViews SymLinksIfOwnerMatch
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
LogLevel warn
CustomLog /var/log/apache2/access.log combined
ServerSignature On
</VirtualHost>
in <Directory> steht order allow,deny und dann allow from all das ist alt und heist jetzt require all granted
bei order deny,allow → require all denied
test.conf
Code: Alles auswählen
<VirtualHost *:80>
ServerName test
ServerAdmin webmaster@localhost
DocumentRoot /var/www/htmltest/
<Directory /var/www/htmltest/>
Options Indexes FollowSymLinks MultiViews SymLinksIfOwnerMatch
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
LogLevel warn
CustomLog /var/log/apache2/access.log combined
ServerSignature On
</VirtualHost>
Code: Alles auswählen
<VirtualHost *:80>
ServerName joomla
ServerAdmin webmaster@localhost
DocumentRoot /var/www/joomla/
<Directory /var/www/joomla/>
Options Indexes FollowSymLinks MultiViews SymLinksIfOwnerMatch
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
LogLevel warn
CustomLog /var/log/apache2/access.log combined
ServerSignature On
</VirtualHost>
seiten aktivieren mit
Code: Alles auswählen
$ a2ensite index.conf
$ a2ensite test.conf
$ a2ensite joomla.conf
$ service apache2 reload
Seite auch wieder deaktivieren mit dem Befehl:
Code: Alles auswählen
a2dissite MEIN_VHOST.conf
habe ich auch abgeschaltet später
Wenn man die Seite default mit a2dissite deaktiviert hat, ist sicher zu stellen, dass es eine NameVirtualHost Anweisung gibt!
Fehler suche apachectl -S
nach aufruf von apachectl -S wurden alle drei seiten aufgelistet -
ergebnis
Code: Alles auswählen
root@apache-simple:/etc# apachectl -S
AH00548: NameVirtualHost has no effect and will be removed in the next release /etc/apache2/sites-enabled/index.conf:1
VirtualHost configuration:
*:80 is a NameVirtualHost
default server index (/etc/apache2/sites-enabled/index.conf:3)
port 80 namevhost index (/etc/apache2/sites-enabled/index.conf:3)
port 80 namevhost test (/etc/apache2/sites-enabled/index.conf:18)
port 80 namevhost joomla (/etc/apache2/sites-enabled/index.conf:33)
ServerRoot: "/etc/apache2"
Main DocumentRoot: "/var/www/html"
Main ErrorLog: "/var/log/apache2/error.log"
Mutex rewrite-map: using_defaults
Mutex default: dir="/var/lock/apache2" mechanism=fcntl
Mutex mpm-accept: using_defaults
Mutex watchdog-callback: using_defaults
PidFile: "/var/run/apache2/apache2.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="www-data" id=33
Group: name="www-data" id=33
/etc/hosts anpsssen zu 127.0.0.1 localhost index test joomla
aufruf in form von http://index, http://test funktioniert lokal
aufruf von http://joomla liefert ein leeres verzeichnis da keine installation da ist – sollte also bei korekter installation auch laufen
lamp-server (xampp alternative) als grundlage für webseitenhosting mit loomla
Code: Alles auswählen
apt-get install apache2 libapache2-mod-php7.0 php7.0 php7.0-mysql mysql-server
php7 ging nicht
dann
Code: Alles auswählen
apt-get install apache2 libapache2-mod-php5 php5 php5-mysql mysql-server # - ohne appache2
Bei der Installation des Servers wird automatisch ein root-Account angelegt. Dabei ist zu beachten, dass die Benutzerverwaltung von MySQL nichts mit den lokalen Benutzern des Linux-Systems zu tun hat - MySQL verwaltet seine Benutzer selber. Bei der Installation des MySQL-Servers wird automatisch nach einem Passwort für den Datenbank-Administrator root gefragt.
Anlegen der Datenbank »joomla«
Anlegen des Datenbankbenutzers »joomla_admin«
Das folgende Kommando legt in Ihrer MySQL Datenbank eine Datenbank mit dem Namen »joomla« an:
mysqladmin -u root -p create joomla
Das folgende Kommando legt in Ihrer MySQL Datenbank den Benutzer »joomla_admin« mit dem Passwort »joomlapass« an und weist diesem Benutzer die zuvor erstellte Datenbank »joomla« zu:
mysql joomla -u root -p -e"GRANT ALL ON joomla.* TO joomla_admin@localhost IDENTIFIED BY 'joomlapass'"
service mysql reload
Für die einwandfreie Funktion von MySQL ist es entscheidend, dass der Daemon stets korrekt heruntergefahren und nicht bspw. bei einem Neustart des Systems abgeschossen wird. Wenn man ihn nur gelegentlich zu Entwicklerzwecken braucht, sollte man deshalb am besten nicht - wie in Dienste beschrieben - mit dem Kommando update-rc.d alle Start- und Stop-Links aus den "run levels" entfernen, sondern nur den Startlink aus dem "run level 2":
Code: Alles auswählen
rm /etc/rc2.d/S20mysql
PHPDadurch wird der Dienst beim Herunterfahren des Rechners immer korrekt beendet, auch wenn man vergessen hat, dass er noch läuft.
php testen
wechseln ins verzeichnis /var/www/html
dort datei phpinfo.php mit touch erstellen
mit nano folgenden inhalt programieren
Code: Alles auswählen
<?php
phpinfo();
?>
erfolgreich wenn ein phpdatenblatt erscheint - erfolgreich
sehr wichtig nach dem test sofort phpinfo.php entfernen
mit rm phpinfo.php
joomla runterladen und installieren
runerladen eines deutschen joomla von jgerman.de als ,gz
kopieren mit cp vom aktiven user (scorpionesc9999) ins verzeichnis /var/www/joomla
entpacken mit tar -xf paketname
An dieser Stelle kommt eine ganz unangenehme Eigenart der Zip-Archiv auf Root-Servern installierten CMS-Systemen zum Vorschein: Jedes Verzeichnis und jede Datei hat den User der das Archiv entpackt als Eigentümer und Gruppe. Hier muss man selbst Hand anlegen, und die recchte entsprechend die Rechte auf den Debian/Apache2 üblichen User www-data gesetzen mit dem befehl:
Code: Alles auswählen
chown -R www-data:www-data /var/www/joomla
Nice URLs
Als Fleißarbeit sollte man zum Schluss noch das »URL Rewriting« aktivieren, weil man früher oder später eh drüber stolpert. Joomla stellt in der Standardinstallation schon eine vorgefertigte ».htaccess« Datei zur Verfügung, wo schon mal alles Nötige eingestellt ist. Die heißt allerdings standardmäßig erst mal »htaccess.txt« und muss umbenannt werden:
die datei befindet sich im joomla hauptverzeichniss /var/www/joomla
mv htaccess.txt .htaccess
Aktivieren Sie das entsprechende Apache2 Modul und starten Sie den Webserver neu:
a2enmod rewrite
service apache2 restart
vorbereitung für dnsmasq
netzwerkkarte auf feste ip stellen
Die entsprechende Datei lautet:
/etc/network/interfaces
Um eine feste IP einzurichten muss der Block für eth0 wie folgt aussehen:
Code: Alles auswählen
# The first network card - this entry was created during the Debian installation
# angegebene adressen sind meine in der vmware
auto eth0
iface eth0 inet static
address 192.168.110.24
broadcast 192.168.110.255
netmask 255.255.255.0
gateway 192.168.110.2
für dnsmaq folgende eintragungen in der reihenfolge
Code: Alles auswählen
nameserver 127.0.0.1
nameserver 192.168.110.24