Skonfigurować witrynę localhost w apache?

11

Szukałem od tygodni, jak skonfigurować środowisko localhost na Ubuntu bez dobrych rozwiązań.

Oto, co chcę osiągnąć:

Chcę mieć Mój folder główny jako taki /home/'username'/Sites/'projectname.pl 'lub / home /' username '/ Sites / pl /' projectname '/ public (or simular)

Podczas uzyskiwania dostępu do mojego lokalnego hosta nie chcę pisać localhost / „nazwa projektu” / public (ani nic w tym stylu). Chciałbym mieć dostęp do projektu po prostu wpisując http: //'projectname'.pl

Wiem, że można to osiągnąć na serwerze Apache w OSX, ale nie znalazłem żadnych wskazówek, jak to osiągnąć na moim komputerze Ubuntu.

Byłbym naprawdę wdzięczny za każdą pomoc i mam nadzieję, że to możliwe.

Pozdrowienia!

Stop cyny z ołowiem
źródło

Odpowiedzi:

16

Możesz skonfigurować vhosty w

/etc/apache2/sites-available

Dla każdego vhosta, w którym chcesz mieć plik conf w tym katalogu. W konfiguracji vhosta możesz ustawić katalog główny dokumentu. Nazwa pliku musi kończyć się na .conf

Na przykład: /etc/apache2/sites-available/projectname.conf:

<VirtualHost *:80>
  ServerName projectname.pl

  DocumentRoot "/home/Sites/projectname/public"

</VirtualHost>

Teraz włącz swoją witrynę za pomocą:

sudo a2ensite projectname

I uruchom ponownie apache:

sudo /etc/init.d/apache2 restart

Następnie edytuj plik / etc / hosts.

Po prostu wklej linię:

127.0.0.1 projectname.pl

na końcu.

Teraz możesz uzyskać dostęp do swojej witryny za pomocą http://projectname.pl

rechengehirn
źródło
Dziękuję za Twoją odpowiedź. Użyłem som nielegalnych znaków w moim pytaniu, co spowodowało, że jakiś tekst wypadł. Zaktualizowałem teraz moje pytanie. Zapoznaj się ponownie i sprawdź, czy jest coś jeszcze, co muszę zrobić, aby działało. Pozdrowienia!
Pewter,
Zasadniczo pozostaje taki sam. Zredagowałem odpowiedź, aby
spełnić
Dwa kluczowe punkty tutaj to nazwanie konfiguracji apache z rozszerzeniem config i późniejsze zrestartowanie apache.
JohnMerlino
Pracował dla mnie !!
arqam
1

Aby dodać do innych odpowiedzi tutaj, sposób, w jaki skonfigurowałem takie zachowanie, to z dowiązaniami symbolicznymi ... Wydaje się, że działa dobrze. Jest to bardzo łatwe i nie wymaga żadnych plików konfiguracyjnych.

sudo ln -s ~/path/to/yoursite/ /var/www/html/yoursite

Ostatnia część powyższego może być dla Ciebie inna. Powyższe jest tym, czego używam w Linux Mint 17. Katalog „/ var / www / html /” jest domyślnym folderem apache „site”.

Więc tak, dla każdego, kto szuka czystej, łatwej metody mapowania witryny bez faktycznego umieszczania katalogu swojej witryny w domyślnym folderze apache, gotowe.

Uwaga: Nie jestem pewien, czy powyższe jest odpowiednie dla środowisk produkcyjnych, ale dla rozwoju lokalnego wydaje się być w porządku. Nie jestem pewien, czy dowiązanie symboliczne przenosi uprawnienia do folderu w katalogu domowym, który (najprawdopodobniej) jest „własnością” użytkownika. W razie potrzeby możesz oczywiście zmienić to na bezpieczniejsze „root”, takie jak katalog apache, ale zostawiam moje w spokoju, ponieważ używam tego w środowisku programistycznym.

derekmx271
źródło
0

Rozwiązałem to, postępując zgodnie z tym przewodnikiem. Naprawdę fajne rozwiązanie, które pozwala utworzyć folder w określonym folderze „Witryny”, a następnie uzyskać do niego dostęp bez konieczności dodawania witryn dostępnych dla każdej nowej witryny.

Przewodnik -> http://css.dzone.com/articles/drop-folder-directory-and-have

Stop cyny z ołowiem
źródło