Jak skonfigurować wirtualne hosty Apache2 w katalogu domowym na Ubuntu 14.04?

10

Próbuję skonfigurować hosta wirtualnego apache2 do uruchamiania aplikacji z katalogu aplikacji w moim katalogu domowym.

home/myusername/apps/application1

Oto kroki, które obecnie wykonuję:

1) Tworzenie katalogów i dodawanie do niego pliku index.html.

home/myusername/apps/application1/index.html

2) Udzielanie uprawnień do katalogów.

sudo chown -R $USER:$USER /home/myusername/apps/application1

sudo chmod -R 755 /home/myusername/apps

3) Tworzenie wirtualnego pliku hosta

sudo touch /etc/apache2/sites-enabled/application1.app.conf

<VirtualHost *:80>    
    ServerAdmin webmaster@localhost
    DocumentRoot /home/myusername/application1
    ServerName application1.app
    ServerAlias www.application1.app

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

4) Aktywuj hosta

sudo a2ensite application1.app

5) Uruchom ponownie Apache

sudo service apache2 restart

6) Dodanie domeny do pliku hosta

127.0.0.1    application1.app

Po zrobieniu tego wszystkiego, kiedy wpisuję adres w aplikacji1.app przeglądarki, otrzymuję następujący 403.

Forbidden
You don't have permission to access / on this server.
Apache/2.4.7 (Ubuntu) Server at application1.app Port 80

Jakieś pomysły na to, co robię źle? Dziękuje wszystkim.

Vinicius Santana
źródło

Odpowiedzi:

19

Kiedy używasz niestandardowych katalogów z apache, musisz również edytować /etc/apache2/apache2.confi dodać <Directory /bla/bla>sekcję, aby apache wiedział, że dostęp do tego obszaru jest OK. Po prostu skopiuj istniejący /var/wwwlub /var/www/htmljeden. Na przykład (z innego pytania i dla innej lokalizacji):

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>

<Directory /media/newhd/test_web/>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>
Doug Smythies
źródło
Tak. Zgadza się ... zorientowałem się ... instrukcje były na stronie docelowej apache2. Dzięki trudne. Głosowanie ;)
Vinicius Santana
1
W powyższej odpowiedzi jest literówka, próbowałem ją edytować, ale potrzebuję co najmniej 6 znaków, aby dokonać edycji i nie mam wystarczającej reputacji, aby opublikować komentarz. /etc/apache2/apcahe2.conf powinien być
/etc/apache2/apache2.conf