Abschlussprojekt Apache, ich bekomme noch graue Haare

Alles, was den Apache betrifft, kann hier besprochen werden.

Abschlussprojekt Apache, ich bekomme noch graue Haare

Postby Chinga-ling » 27. March 2008 10:15

Guten Tag,

ich arbeite gerade an meinem Abschlussprojekt nämlich
einene virtuellen Apacheserver.

Apache läuft unter Ubuntu 6.06 LTS 2.
Apacheversion 2.2.8
Er wurde im 3-Schritt einkompiliert, sowie php und mysql.
Desweiteren wurde noch das Loggingtool crononlog isnstalliert.
Der neue virtuelle Server soll den Alten ersetzen.
Arbeite mit dem Buch von Sasha Kerksen "Apache2"

Jetzt habe ich 2 Probleme und bin echt am verzweifeln, da ich schön langsam auch ein bisschen unter Zeitdruck stehe...

1. Problem
Er soll auch SSL unterstützen.

Habe Openssl installiert und eine Zertifikat, einen Schlüssel habe das zertifikat dann auch selbst signiert.
Hat alles funktioniert.

In der httpd.conf muss man das Modul mod_ssl.so laden.
So, das gibts bei mir schon mal gar nicht. Ich kann das Modul nirgends finden. Der Apache wurde aber so installiert, dass dieser DSO fähig ist, weiss aber nicht genau ob ich irgendwie das modul noch hinzufügen kann, geschweige denn wie.

Der Apacheserver muss außerdem mit ssl gestartet werden. Da ich das über apachectl mache weiß ich auch ned wie des funktioniert, aber wenn ich doch den <ifDefine>-Tag weglasse startet der apache doch automatisch mit ssl Unterstützung oder?

Meine ssl.conf im conf Directory sieht folgendermaßen aus:

<ifDefine SSL>
<ifDefine!NoSSL>



<VirtualHost *:443>
DocumentRoot "/usr/local/apache2/htdocs"
ServerName www.meintest.de:443
ErrorLog /usr/local/apache2/logs/error_log
TransferLog /usr/local/apache2/logs/access_log

SSLEngine on



SSLCertificateFile /usr/local/apache2/conf/ssl/meintest.crt
SSLCertificateKeyFile /usr/local/apache2/conf/ssl/meintest.key

<Files ~ "/.(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
</Files>
<Directory "/usr/local/apache2/cgi-bin">
SSLOptions +StdEnvVars
</Directory>

</VirtualHost>
</ifDefine>
</ifDefine>



Danach wird noch die httpd-ssl.conf in der httpd.conf included.

Diese sieht so aus:

Listen 443
SSLEngine on

SSLMutexdefault

AddType application/x-x509-ca-cert .crt
AddType application/x-pkcs7-crl .crl

SSLPassPhraseDialog builtin

SSLSessionCache "shmcb:/usr/local/apache2/logs/ssl_schage(512000)"
SSLSessionCacheTimeout 300

SSLCipherSuite ALL:!ADH:!EXPORT56:RC4-RSA:+High:+MEDIUM:*LOW:+SSLv2:+EXP:+eNull

<Files ~ "/.(cgi|shtml|phtml|php?)$">
SSLOptions +StdEnvVars
</Files>
<Directory "/usr/local/apache2/cgi-bin">
SSLOptions +StdEnvVars
</Directory>

Ist ist doch möglich die ganze sache mit der httpd_ssl.conf wegzulassen und das alles in die ssl.conf zu schreiben. Denn standart mäßig steht in dem Template der httpd_ssl.conf ned mehr drin als in der ssl.conf.

Ein virtual Host wurde in der httpd-vhosts.conf definiert.
Inhalt:
NameVirtualHost *:80

<VirtualHost *:80>
ServerAdmin webadmin@testmich.de
DocumentRoot "/usr/local/apache2/htdocs/"
Servername www.meintest.de
ErrorLog....
</VirtualHost>

Ich starte den Server mit apachectl start
Danach gibt er mir natürlich einen Syntax error aus, da er nichteinmal mod_ssl.so finden kann und somit das Statement LoadModule nicht korrekt ist.

2. Problem
Anscheinend funktionieren meine PHP-Sessions nicht.

Der Webserver soll mit der Galerie-Software Gallery2 laufen.
Dieses entpacke ich in das vorgesehene Verzeichnis.

Über den Browser finde ich dort einen Installationswizard.
Dieser gibt mir einen 30stelligen String an diese ich in deine login.txt speichern soll und diese, dann ich das Hauptverzeichnis von Gallery2 lege.

wenn dies geschehen ist, drücke ich auf authenticate me.
Draufhin wird im angezeigt das ich nicht berechtigt bin, weil eben der key nicht stimmt. Es wird auch die seite neu geladen und ein neue key angezeigt, den ich eingeben soll. Bei jedem refesh erscheint ein neuer key.

Ich verwende php5.

auszug aus phpinfo()

session

Session Support enabled
Registered save handlers files user sqlite
Registered serializer handlers php_binary


session.auto_start Off
session.bug_compat_42 On
session.bug_compat_warn On
session.cache_expire 180
session.cache_limiter nocache
session.cookie_domain no value
session.cookie_httponly Off
session.cookie_lifetime 0
session.cookie_path / /
session.cookie_secure Off
session.entropy_file no value
session.entropy_length 0
session.gc_divisor 100
session.gc_maxlifetime 1440
session.gc_probability 1
session.hash_bits_per_character 4
session.hash_function 0
session.name PHPSESSID
session.referer_check no value
session.save_handler files
session.save_path /var/lib/php
session.serialize_handler php
session.use_cookies On
session.use_only_cookies Off
session.use_trans_sid 0


Ich bedanke mich schon mal sehr für eure Hilfe und Zeit.
Bin noch ned so wirklich fit was des ganze angeht, deswegen is mir auch ein bischen mulmig vor dem ganzen, vor allem, weil es bald fertig sein sollte und funktionieren soll. :oops:

Hab mich jetzt schon 3 Tage damit rumgeschlagen, und ich bin auf keinen grünen Zweig gekommen.


Grüße
Chinga-ling
 
Posts: 3
Joined: 27. March 2008 08:55

Postby Wiedmann » 27. March 2008 10:35

In der httpd.conf muss man das Modul mod_ssl.so laden.
So, das gibts bei mir schon mal gar nicht. Ich kann das Modul nirgends finden.

Dann hast du es beim "configure" wohl nicht mit angegeben.


Anscheinend funktionieren meine PHP-Sessions nicht.

"Anscheinend" ? ...
Nimm doch einfach einen simplen Beispielcode aus dem PHP-Manual zu Sessions und teste das.

BTW:
Code: Select all
session.save_path /var/lib/php

Entweder du gibst hier gar nichts an, oder das Temp-Verzeichnis deines Servers.
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Chinga-ling » 27. March 2008 10:51

Super,
PHP läuft jetzt einwandfrei!
Ich danke dir! :)

Jop,
meine installation für apache sah so aus

./configure --enable-module=so --enable-mods_shared=all
Make
Make install

Es werden doch somit DSO unterstützt.
Somit gibts doch eine Möglichkeit das modul einzubinden.
Es gibt auch dazu ein tool das apxs heißt. Das finde ich unter apache2/bin
aber ich weis ned so wirklich wie das funktioniert.
Oder lieg ich da komplett aufn falschen Dampfer mit der Behauptung?

Grüße
Chinga-ling
 
Posts: 3
Joined: 27. March 2008 08:55

Postby Wiedmann » 27. March 2008 11:05

Es werden doch somit DSO unterstützt.

Yup.

Somit gibts doch eine Möglichkeit das modul einzubinden.

Sofern du das Modul sonstwie kompiliert hast, könntest du das dann über LoadModule einbinden.

Es gibt auch dazu ein tool das apxs heißt. Das finde ich unter apache2/bin aber ich weis ned so wirklich wie das funktioniert.

Kann man im Apache-Manual nachlesen... ;-)

Code: Select all
./configure --enable-module=so --enable-mods_shared=all

Nur, warum kompilierst du hier mod_ssl nicht einfach gleich mit?
Code: Select all
./configure  --enable-mods-shared="all ssl"
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Chinga-ling » 27. March 2008 11:08

Nehmen wir an ich würde den Server neu kompilieren. Vorher natürlich alles was mit apache zu tun hat killen.

Funktioniert, dass so einfach? Läuft der dann noch wirklich rund wenn man da einfach nochmal drüber kompiliert?
Chinga-ling
 
Posts: 3
Joined: 27. March 2008 08:55


Return to Apache

Who is online

Users browsing this forum: No registered users and 4 guests