Jak skonfigurować wirtualnego hosta w Ubuntu?


Mam dostępną aplikację
       via 1.2.3.4/myapp
... Aplikacja jest zainstalowana w
/var/www/myapp
... Utworzyłem subdomenę (
       apps.mydomain.com
) który wskazuje
       1.2.3.4
... Chcę, aby serwer wskazywał
       var/www/myapp
jeśli zadzwonię
       apps.mydomain.com/myapp
jak to zrobiłem? Mam doświadczenie w tworzeniu wirtualnych hostów (jest ich wiele) lokalnie, ale zgubiłem się, ponieważ jest on teraz w produkcji, a to jest trochę inne. Oto moja konfiguracja wirtualnego hosta:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName apps.mydomain.com/myapp DocumentRoot/var/www/myapp/public
<Directory/>
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory/var/www/>
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 All
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
</VirtualHost>

Jakieś pomysły, dlaczego nadal widzę pliki zamiast kierować mnie do katalogu głównego dokumentu?
Na wszelki wypadek aplikacja jest oparta na frameworku Laravel 4. Teraz jest naprawdę źle, ponieważ każdy może uzyskać dostęp do plików z poziomu przeglądarki.
Zaproszony:
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Myślę, że dodanie tego do wirtualnego hosta apps.mydomain.com powinno działać:
         Alias/myapp "/var/www/myapp/public/"
Powinno to wskazywać apps.mydomain.com/myapp do tego folderu
A jeśli to zadziała, możesz usunąć istniejącego wirtualnego hosta
         apps.mydomain.com/myapp
Ale nie jestem administratorem serwera, mogę się mylić. Poczekaj :)
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Spróbuj tego.
Administrator serwera webmaster @ localhost nazwa_serwera apps.moja_domena.com
   DocumentRoot/var/www
<Directory/var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
Alias/myapp "/var/www/myapp/public/"
ScriptAlias/cgi-bin//usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride All
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

A jeśli nie chcesz, aby inne osoby miały dostęp do apps.mydomain.com, dodaj index.php do/var/www i przekierowuj do apps.mydomain.com/myapp.
<?php
header("Location:/myapp");
?>

Myślę, że to będzie działać zgodnie z Twoimi potrzebami.

Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się