2012-04-09 6 views
2

Ich habe ein seltsames Problem mit Zend Framework unter Ubuntu 11.10. Ich benutze einen Laptop als meine Programmierumgebung, um einige Dinge zu testen, bevor ich sie auf meinen Hauptserver hochlade. Ich habe Zend Framework heruntergeladen und installiert und ein neues Projekt erstellt. Wenn Sie zu localhost.project gehen, funktioniert alles gut.Zend Framework unter Ubuntu 11.10: interner Serverfehler mit virtuellem Server

Das Problem ist, wenn ich dann versuche, einen virtuellen Server einzurichten, so kann ich auf project.localhost gehen und es auf die gleiche Weise sehen (ich weiß, es ist nicht wichtig, so zu tun, aber ich möchte sowieso) . Ich richte einen virtuellen Host ein, indem ich zu/etc/apache2/sites-available gehe und dort einen neuen virtuellen Host erstelle. Wenn ich documentRoot und whatnot auf/var/www/project/public setze, erhalte ich einen internen Serverfehler. Was ist Fremder immer noch das, wenn ich es dann nur auf/var/www/project setze, kann ich alle Verzeichnisse sehen - Anwendung, Dokumente, Bibliothek, Tests - aber KEIN öffentliches. Ich habe keine Ahnung, warum das passiert.

Ich benutze eine neue Installation von Ubuntu 11.10, und ich benutzte tasksel, um den LAMP-Server zu installieren. Dies sollte funktionieren - es funktionierte gut mit meinem VPS - aber es ist nicht.

Edit: hier ist die Datei für den virtuellen Host:

<VirtualHost *:80> 
ServerAdmin [email protected] 
ServerName project.localhost 

DocumentRoot /home/moi/web_docs/project/public 
<Directory /> 
    Options All 
    AllowOverride All 
</Directory> 
<Directory /home/moi/web_docs/project/public> 
    Options Indexes FollowSymLinks MultiViews 
    AllowOverride All 
    Order allow,deny 
    allow from all 
</Directory> 

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ 
<Directory "/usr/lib/cgi-bin"> 
    AllowOverride None 
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch 
    Order allow,deny 
    Allow from all 
</Directory> 

ErrorLog ${APACHE_LOG_DIR}/error.log 

# Possible values include: debug, info, notice, warn, error, crit, 
# alert, emerg. 
LogLevel warn 

CustomLog ${APACHE_LOG_DIR}/access.log combined 

Alias /doc/ "/usr/share/doc/" 
<Directory "/usr/share/doc/"> 
    Options Indexes MultiViews FollowSymLinks 
    AllowOverride All 
    Order deny,allow 
    Deny from all 

Allow from 127.0.0.0/255.0.0.0 ::1/128 
    </Directory> 

</VirtualHost> 
+1

Werfen Sie einen Blick auf die Protokolle in '/ var/log/apache2/'. Wahrscheinlich sind es nur falsche Einstellungen in Ihrem vhost, z. 'AllowOverride All' ist nicht gesetzt. – dbrumann

+0

@mahok perfekte Antwort, das ist richtig. – drew010

+0

Der Fehler, den ich bekomme, ist: /home/moi/web_docs/project/public/.htaccess: Ungültiger Befehl 'RewriteEngine', vielleicht falsch geschrieben oder durch ein Modul definiert, das nicht in der Serverkonfiguration enthalten ist. – blainarmstrong

Antwort

5

Sie haben Apache Rewrite-Modul zu aktivieren:

sudo a2enmod rewrite 
sudo service apache2 restart 
+0

Schön! Das hat das Problem gut gelöst. Vielen Dank! – blainarmstrong