Andoril
Anmeldungsdatum: 17. Juni 2014
Beiträge: Zähle...
Wohnort: Köln
|
Hi, ich habe heute den Server von meinem Arbeitgeber neu eingerichtet und habe jetzt folgendes Problem: Bei Aufruf der Seite remote.hardes-wessler.de ruft er die index.html auf, die im Ordner /var/www/html liegt, obwohl das DocumentRoot auf /var/www/remote verweist. Mittlerweile kann ich mir nur noch am Kopf kratzen . Zumal es vor dem aufsetzen funktioniert hat wie es sollte. In /etc/apache2/sites-enabled sind nur die 000-default.conf, die ich nicht verändert habe, und die remote.conf. Alle anderen VHosts sind disabled. Hier mal die remote.conf: <VirtualHost *:80>
ServerName remote.hardes-wessler.de
ServerAdmin webmaster@localhost
DocumentRoot /var/www/remote
<Directory /var/www/remote>
Options Indexes FollowSymLinks MultiViews
AllowOverride all
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> Verwendet hierbei werden Ubuntu-Server 12.04 und Apache 2.4.9. Ich hoffe mir kann jemand helfen 😀
|
djimno
Anmeldungsdatum: 11. März 2008
Beiträge: 387
Wohnort: Pulheim-Brauweiler
|
Hi Andoril. Offensichtlich gehst du den falschen Weg. Hast die subdomain so als VirtualHost konfiguriert, wie in dem u.g. Beitrag beschrieben? Oder hast du lediglich eine remote.conf (wobei ich nicht erkennen kann, was das bringen soll) angelegt? Wie sieht es mit der Datei: /etc/apache2/sites-available/remote aus?
Ist auch die Seite aktiviert worden? sudo a2ensite remote Quelle: Apache/Virtual Hosts Oder ich verstehe dein Mail falsch.
|
misterunknown
Ehemalige
Anmeldungsdatum: 28. Oktober 2009
Beiträge: 4403
Wohnort: Sachsen
|
Andoril schrieb: Bei Aufruf der Seite remote.hardes-wessler.de ruft er die index.html auf, die im Ordner /var/www/html liegt, obwohl das DocumentRoot auf /var/www/remote verweist.
Deine VirtualHost-Konfiguration sieht erstmal gut aus. Wichtig wären jetzt für uns noch die folgenden Dateien:
/etc/apache2/apache2.conf
/etc/apache2/httpd.conf
/etc/apache2/ports.conf
und der Inhalt der Dateien in /etc/apache2/sites-enabled.
|
mario93
Anmeldungsdatum: 23. September 2011
Beiträge: Zähle...
|
in deiner "remote" (in /etc/apache2/sites-available) vHost-Config musst du <VirtualHost *:80> ändern in <VirtualHost remote.hardes-wessler.de:80> dann sollte es klappen
|
misterunknown
Ehemalige
Anmeldungsdatum: 28. Oktober 2009
Beiträge: 4403
Wohnort: Sachsen
|
mario93 schrieb: in deiner "remote" (in /etc/apache2/sites-available) vHost-Config musst du <VirtualHost *:80> ändern in <VirtualHost remote.hardes-wessler.de:80> dann sollte es klappen
Nein, solle es nicht. Ob er nun auf allen IPs lauscht, oder nur speziell auf einen Hostname, ist egal. Da ist der Stern eher fehlerunanfälliger, es sei denn, er hat die Direktive NameVirtualHost vergessen.
|
djimno
Anmeldungsdatum: 11. März 2008
Beiträge: 387
Wohnort: Pulheim-Brauweiler
|
Ich vermute, dass die ganze Konfiguration nicht vorhanden ist. Meines Erachtens sollte das /etc/apache2/sites-enabled nicht geändert werden, auch keine remote.conf etc darin angelegt werden. Damit die VHosts funktionieren muss man in /etc/apache2/sites-available eine Datei anlegen. Als Beispiel "remote". Dort drin werden die Angaben dann erfasst: <VirtualHost *:80>
ServerName remote.hardes-wessler.de
ServerAdmin webmaster@localhost
DocumentRoot /var/www/remote
<Directory /var/www/remote>
Options Indexes FollowSymLinks MultiViews
AllowOverride all
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> Anschließend muss diese Seite noch aktiviert werden: sudo a2ensite remote So habe ich es mal gelernt. Lasse mich gerne auch anderes belehren. 😀
|
misterunknown
Ehemalige
Anmeldungsdatum: 28. Oktober 2009
Beiträge: 4403
Wohnort: Sachsen
|
djimno schrieb: Ich vermute, dass die ganze Konfiguration nicht vorhanden ist.
Die ganze Konfiguration ist nicht vorhanden?^^ Wie meinen?
Meines Erachtens sollte das /etc/apache2/sites-enabled nicht geändert werden, auch keine remote.conf etc darin angelegt werden. Damit die VHosts funktionieren muss man in /etc/apache2/sites-available eine Datei anlegen. Als Beispiel "remote".
[...]
Anschließend muss diese Seite noch aktiviert werden:
sudo a2ensite remote
So habe ich es mal gelernt. Lasse mich gerne auch anderes belehren. 😀
Das ist ein schöner Weg. So macht man es nach "Lehrbuch". Fakt ist aber: Der Apache geht beim Starten oder beim Reloaden der Konfiguration einfach in das Verzeichnis sites-enabled und wertet alles aus, was drin ist. Ob der Symlink nun von a2ensite oder per Hand (ln -s) gesetzt wurde ist dem Conchita. Man kann sogar, wenn man ein ganz abenteuerlustiger sein will 😉, einfach eine "echte" Datei in sites-enabled anlegen. Das mache ich manchmal, wenn ich kurz nen vHost zum testen brauche. Damit der Apache das macht muss allerdings in der apache2.conf eine Include-Direktive stehen. Wenn das nicht der Fall ist, wird der Ordner einfach ignoriert. Außerdem sollte man sich die 000-default Datei angucken. Wenn dort krude Einstellungen vorhanden sind kann es ebenfalls zu Fehlern führen. Zu guter Letzt ist es noch wichtig, ob eine httpd.conf vorhanden ist. Diese Datei hat heutzutage zwar keine wirkliche Rolle mehr, kann aber durchaus Kopfschmerzen bereiten, wenn dort noch Einstellungen aus früheren Versionen des Apachen drin stehen. Dort sind nämlich manchmal noch Direktiven drin, die entweder von anderen (conf.d-Verzeichnis) überschrieben werden, oder andere selbst überschreiben. Die Fehlersuche ist dann manchmal nicht ganz einfach. Wenn man eine Direktive sucht, ist es am besten erstmal zu gucken, in welchen Dateien diese überhaupt vorhanden ist:
bash
$ cd /etc/apache2
$ grep -rl "Suchbegriff" *
Dann sieht man unter Umständen auch, was falsch läuft.
|
Andoril
(Themenstarter)
Anmeldungsdatum: 17. Juni 2014
Beiträge: 2
Wohnort: Köln
|
Okay. Erstmal: Sorry, dass ich erst so spät wieder reagiere. Hatte Urlaub und grad durch meine Mails gesehen, dass ich hier ja mal was nachgefragt hatte 😳 Der neue Stand:
remote.hardes-wessler.de läuft jetzt aus welchen Gründen auch immer wie sie soll 😀 Das Problem ist, dass wir einen weiteren VirtualHost aufsetzen wollten, der als Testseite für unseren aktuellen Kunden laufen soll. Den habe ich auch nach demselben Schema wie den remote erstellt, nur dass mit der Seite kunde.remote.hardes-wessler.de nur folgendes aufgerufen wird:
Willkommen auf kunde.remote.hardes-wessler.de
Für diese Domain steht momentan keine Website zur Verfügung.
Der DocumentRoot zielt in dem Fall auf die Typo3, die in /var/www/html/typo3 liegt: 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 | <VirtualHost *:80>
ServerName kunde.remote.hardes-wessler.de
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/typo3
<Directory /var/www/html/typo3>
Options Indexes FollowSymLinks MultiViews
AllowOverride all
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>
|
Ich habe die Seite (natürlich) auch mit sudo a2ensite kunde.conf
aktiviert. Dieses mal schicke ich auch die /apache2/apache2.conf und die /apache2/ports.conf mit.
Wenn es bei der /apache2/httpd.conf wirklich nur Probleme mit Direktiven aus alten Apache Versionen geben kann, dürfte es kein Problem geben, weil ich den Server kurz vorher erst aufgesetzt habe (inklusive Ubuntu Installation).
Wenn man eine Direktive sucht, ist es am besten erstmal zu gucken, in welchen Dateien diese überhaupt vorhanden ist: bash
$ cd /etc/apache2
$ grep -rl "Suchbegriff" *
Dafür müsste ich die gesuchte Direktive wahrscheinlich kennen, oder? (Sorry für die blöde Frage 🙄) Ich schau jetzt auch mal öfter rein 😉 /apache2/apache2.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221 | # This is the main Apache server configuration file. It contains the
# configuration directives that give the server its instructions.
# See http://httpd.apache.org/docs/2.4/ for detailed information about
# the directives and /usr/share/doc/apache2/README.Debian about Debian specific
# hints.
#
#
# Summary of how the Apache 2 configuration works in Debian:
# The Apache 2 web server configuration in Debian is quite different to
# upstream's suggested way to configure the web server. This is because Debian's
# default Apache2 installation attempts to make adding and removing modules,
# virtual hosts, and extra configuration directives as flexible as possible, in
# order to make automating the changes and administering the server as easy as
# possible.
# It is split into several files forming the configuration hierarchy outlined
# below, all located in the /etc/apache2/ directory:
#
# /etc/apache2/
# |-- apache2.conf
# | `-- ports.conf
# |-- mods-enabled
# | |-- *.load
# | `-- *.conf
# |-- conf-enabled
# | `-- *.conf
# `-- sites-enabled
# `-- *.conf
#
#
# * apache2.conf is the main configuration file (this file). It puts the pieces
# together by including all remaining configuration files when starting up the
# web server.
#
# * ports.conf is always included from the main configuration file. It is
# supposed to determine listening ports for incoming connections which can be
# customized anytime.
#
# * Configuration files in the mods-enabled/, conf-enabled/ and sites-enabled/
# directories contain particular configuration snippets which manage modules,
# global configuration fragments, or virtual host configurations,
# respectively.
#
# They are activated by symlinking available configuration files from their
# respective *-available/ counterparts. These should be managed by using our
# helpers a2enmod/a2dismod, a2ensite/a2dissite and a2enconf/a2disconf. See
# their respective man pages for detailed information.
#
# * The binary is called apache2. Due to the use of environment variables, in
# the default configuration, apache2 needs to be started/stopped with
# /etc/init.d/apache2 or apache2ctl. Calling /usr/bin/apache2 directly will not
# work with the default configuration.
# Global configuration
#
#
# ServerRoot: The top of the directory tree under which the server's
# configuration, error, and log files are kept.
#
# NOTE! If you intend to place this on an NFS (or otherwise network)
# mounted filesystem then please read the Mutex documentation (available
# at <URL:http://httpd.apache.org/docs/2.4/mod/core.html#mutex>);
# you will save yourself a lot of trouble.
#
# Do NOT add a slash at the end of the directory path.
#
#ServerRoot "/etc/apache2"
#
# The accept serialization lock file MUST BE STORED ON A LOCAL DISK.
#
Mutex file:${APACHE_LOCK_DIR} default
#
# PidFile: The file in which the server should record its process
# identification number when it starts.
# This needs to be set in /etc/apache2/envvars
#
PidFile ${APACHE_PID_FILE}
#
# Timeout: The number of seconds before receives and sends time out.
#
Timeout 300
#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
#
KeepAlive On
#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 100
#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 5
# These need to be set in /etc/apache2/envvars
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
#
# HostnameLookups: Log the names of clients or just their IP addresses
# e.g., www.apache.org (on) or 204.62.129.132 (off).
# The default is off because it'd be overall better for the net if people
# had to knowingly turn this feature on, since enabling it means that
# each client request will result in AT LEAST one lookup request to the
# nameserver.
#
HostnameLookups Off
# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
# container, error messages relating to that virtual host will be
# logged here. If you *do* define an error logfile for a <VirtualHost>
# container, that host's errors will be logged there and not here.
#
ErrorLog ${APACHE_LOG_DIR}/error.log
#
# LogLevel: Control the severity of messages logged to the error_log.
# Available values: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the log level for particular modules, e.g.
# "LogLevel info ssl:warn"
#
LogLevel warn
# Include module configuration:
IncludeOptional mods-enabled/*.load
IncludeOptional mods-enabled/*.conf
# Include list of ports to listen on
Include ports.conf
# Sets the default security model of the Apache2 HTTPD server. It does
# not allow access to the root filesystem outside of /usr/share and /var/www.
# The former is used by web applications packaged in Debian,
# the latter may be used for local directories served by the web server. If
# your system is serving content from a sub-directory in /srv you must allow
# access here, or in any related virtual host.
<Directory />
Options FollowSymLinks
AllowOverride None
Require all denied
</Directory>
<Directory /usr/share>
AllowOverride None
Require all granted
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
#<Directory /srv/>
# Options Indexes FollowSymLinks
# AllowOverride None
# Require all granted
#</Directory>
# AccessFileName: The name of the file to look for in each directory
# for additional configuration directives. See also the AllowOverride
# directive.
#
AccessFileName .htaccess
#
# The following lines prevent .htaccess and .htpasswd files from being
# viewed by Web clients.
#
<FilesMatch "^\.ht">
Require all denied
</FilesMatch>
#
# The following directives define some format nicknames for use with
# a CustomLog directive.
#
# These deviate from the Common Log Format definitions in that they use %O
# (the actual bytes sent including headers) instead of %b (the size of the
# requested file), because the latter makes it impossible to detect partial
# requests.
#
# Note that the use of %{X-Forwarded-For}i instead of %h is not recommended.
# Use mod_remoteip instead.
#
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
# Include of directories ignores editors' and dpkg's backup files,
# see README.Debian for details.
# Include generic snippets of statements
IncludeOptional conf-enabled/*.conf
# Include the virtual host configurations:
IncludeOptional sites-enabled/*.conf
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
|
/apache2/ports.conf 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 | # If you just change the port or add more ports here, you will likely also
# have to change the VirtualHost statement in
# /etc/apache2/sites-enabled/000-default.conf
Listen 80
<IfModule ssl_module>
Listen 443
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
</IfModule>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
|
|
xabbuh
Anmeldungsdatum: 25. Mai 2006
Beiträge: 6411
|
Löst der Hostname kunde.remote.hardes-wessler.de auch auf die IP-Adresse Deines Servers auf? Die Meldung klingt eher nach einer Standardseite Deines Providers.
|
misterunknown
Ehemalige
Anmeldungsdatum: 28. Oktober 2009
Beiträge: 4403
Wohnort: Sachsen
|
Andoril schrieb: Der neue Stand:
remote.hardes-wessler.de läuft jetzt aus welchen Gründen auch immer wie sie soll 😀
Sicher? Zum neuen Problem: Deine Konfigurationsdateien sind in Ordnung. Der Vollständigkeit halber möchte ich dich noch darauf hinweisen, dass du einen Apache 2.4 nutzt, und dass sich dort einige Sachen im Bezug auf 2.2 geändert haben. Das sollte aber momentan nicht dein Problem sein. Wenn es nicht an der Apache-Konfiguration an sich liegt, dann kann es eigentlich nur noch eine Datei in einem Konfigurationsverzeichnis sein. Davon gibt es 3:
conf.d/ conf-enabled/ sites-enabled/
xabbuh schrieb: Löst der Hostname kunde.remote.hardes-wessler.de auch auf die IP-Adresse Deines Servers auf? Die Meldung klingt eher nach einer Standardseite Deines Providers.
Kann sein, ist aber unwahrscheinlich, wenn hardes-wessler.de korrekt auflöst, was offensichtlich der Fall ist.
|
xabbuh
Anmeldungsdatum: 25. Mai 2006
Beiträge: 6411
|
misterunknown schrieb: xabbuh schrieb: Löst der Hostname kunde.remote.hardes-wessler.de auch auf die IP-Adresse Deines Servers auf? Die Meldung klingt eher nach einer Standardseite Deines Providers.
Kann sein, ist aber unwahrscheinlich, wenn hardes-wessler.de korrekt auflöst, was offensichtlich der Fall ist.
Die IP-Adressen beider Hostnamen sind zumindest unterschiedlich.
|
misterunknown
Ehemalige
Anmeldungsdatum: 28. Oktober 2009
Beiträge: 4403
Wohnort: Sachsen
|
xabbuh schrieb: Die IP-Adressen beider Hostnamen sind zumindest unterschiedlich.
Naja, eigentlich fällt nur remote.hardes-wessler.de aus der Reihe. kunde.remote.hardes-wessler.de und hardes-wessler.de lösen bei mir gleich auf (188.94.248.129).
|
xabbuh
Anmeldungsdatum: 25. Mai 2006
Beiträge: 6411
|
misterunknown schrieb: xabbuh schrieb: Die IP-Adressen beider Hostnamen sind zumindest unterschiedlich.
Naja, eigentlich fällt nur remote.hardes-wessler.de aus der Reihe. kunde.remote.hardes-wessler.de und hardes-wessler.de lösen bei mir gleich auf (188.94.248.129).
Ach so, das hatte ich nicht weiter geprüft. Ich kann allerdings sowieso keine der Seiten erreichen.
|