Umstellung auf "www.stefanwienert.net" und Passenger mit apache mod userdir

Diejenigen, die meinen Feed abonniert haben, haben es wahrscheinlich schon gemerkt, da die ganzen Items als ungelesen markiert sein könnten.
Da ich passenger verwende, aber gleichzeitig noch apache mit mod_userdir nutzen möchte, blieb mir nichts anderes übrig als den Hauptteil der Site auf eine Subdomain zu legen. Aus irgendwelchen unerfindlichen Gründen hatte ich damals “site.stefanwienert.net” genommen. Jetzt ist mir mal aufgefallen, dass die Wahl der Subdomain “www.” deutlich klüger gewesen wäre.

Anfragen an mod_userdir können bei dieser Methode dann einfach durch “http://hauptdomain/~username” entgegengenommen werden. Die Haupt Rails Domain, auf die der Nutzer bei Erstkontakt stoßen sollte, ist dann “www.stefanwienert.net” und wird dank Passenger dann an einen Ruby-Prozess dispatcht. Dazu muss man einfach nur zwei vhosts in seiner “/etc/apache2/sites-enabled/…” aktivieren:

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
# Hier fuer die Hauptdomain, um weitere Websites zu ermoeglichen
# z.B. php Wikis oder Userspaces
<VirtualHost *:80>                                      
      ServerAdmin s59605@htw-dresden.de                 
      ServerName stefanwienert.net                      
      DocumentRoot /var/www                             
#   PassengerHighPerformance on                         
        <Directory /var/www/>                           
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All                        
                Order allow,deny                         
                allow from all                                             
        </Directory>                                                           
</VirtualHost>    

# jetzt der eigentliche Rails Prozess
<VirtualHost *:80>                                                             
        ServerAdmin info@stefanwienert.net                                     
        ServerName www.stefanwienert.net                                       
        ServerAlias site.stefanwienert.net                                           
        #RailsBaseURI /site                                                    
        DocumentRoot /path/to/rails/public                         
# gzip html, css and js                                                       
        AddOutputFilterByType DEFLATE text/html text/css application/x-javascript application/javascript
                                        
  <Directory /path/to/rails/public>                                                         
      Order allow,deny                                                                                  
      Allow from all                                                                                    
      AllowOverride All                                                                                 
  </Directory>                                                                                          
</VirtualHost>

Zu guter Letzt noch eine 304 Weiterleitung für die, die “http://site.stefanwienert.net” oder “http://stefanwienert.net” eintippen. Das ganze kann man in die entsprechenden htaccess packen oder oben gleich mit bei den “Directory” Direktiven mit angeben. Hier der Vollständigkeit halber, bevor ihr selbst erst googlen müsst.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# /var/www/.htaccess:
RewriteEngine On

RewriteCond %{HTTP_HOST} ^stefanwienert.net$
RewriteCond %{REQUEST_URI} ^\/$
RewriteRule ^(.*)$ http://www.stefanwienert.net/$1 [R=permanent,L]


# /path/to/rails/public/.htaccess
RewriteEngine on

RewriteCond %{HTTP_HOST} ^site.stefanwienert.net [NC]
RewriteRule ^(.*)$ http://www.stefanwienert.net/$1 [L,R=301]


# Hups, hier sieht man mal, dass ich die Zeilen jeweils woanders
# herkopiert habe: Selbe Funktion aber etwas andere Syntax :)

Einen Kommentar abgeben


(lesstile aktiviert - umgib Codeblöcke für Syntaxhighlighting mit --- Ruby )