Używanie domyślnego VirtualHost bez www. w domenie

1

Używam 64-bitowego Debiana 8.1 z zestawem nazw hostów, więc mój login to [email protected]. Zainstalowałem Apache2, PHP itp ... i ustawiłem również VirtualHost:

<VirtualHost *:80>
    ServerName example.com
    ServerAlias *.example.com

    ServerAdmin admin@localhost
    DocumentRoot /var/www/example.com/
    <Directory "/var/www/example.com/">
        Options FollowSymLinks
        AllowOverride All
    </Directory>

</VirtualHost>

Ustawienia DNS:

example.com     1800    A       111.111.111.111
example.com     1800    MX  1   example.com
*.example.com   1800    CNAME   example.com

Kiedy idę do http://example.com/, ładuje się /var/www/html/ indeks, kiedy idę http://www.example.com/ jego działa świetnie. Próbowałem tyle edycji, ale nic nie działa. Czy można to połączyć z nazwą hosta mojego serwera? Dowolny pomysł?

GAMELASTER
źródło
Spróbuj tego imgur.com/2VdrimM (oczywiście zmienia się, aby dopasować się do Twoich ścieżek)
Francisco Tapia

Odpowiedzi:

1

Tak masz ServerName i ServerAlias Ustawiać:

ServerName example.com
ServerAlias *.example.com

Ale sugerowałbym ustawienie ServerName i ServerAlias lubię to:

ServerName www.example.com
ServerAlias www example.* www.example.*

Lubię używać symboli wieloznacznych w przypadkach, w których mam wiele domen najwyższego poziomu ustawionych dla wspólnej domeny, którą posiadam. Ale jeśli masz tylko .com wersję możesz po prostu ustawić tak:

ServerName www.example.com
ServerAlias www example.com www.example.com

Następnie uruchom ponownie Apache i wszystko powinno być dobrze:

sudo service apache2 restart

Jeśli jednak uważasz, że to problem z nazwą hosta, możesz to zrobić, aby potwierdzić lub zmienić nazwę hosta serwera. Najpierw pobierz nazwę hosta w następujący sposób:

hostname

A jeśli chcesz zmienić tę nazwę hosta, uruchom to polecenie:

sudo hostname example.com

Sprawdź także sysctl ustawienie dla kernel.hostname lubię to:

sysctl kernel.hostname

A jeśli trzeba to zmienić, zrób to tak:

sudo sysctl kernel.hostname=example.com

Po wykonaniu tych czynności upewnij się, że wszystkie ustawienia związane z nazwą hosta są dostosowane /etc/hosts jeśli trzeba je dostosować, a następnie uruchom ponownie komputer. Gdy pojawi się ponownie, wypróbuj go i zobacz, co się stanie. Teraz powinno być dobrze.

JakeGould
źródło
Nie pomogłem. Może źle napisałem pytanie. Kiedy idę do example.com bez www. , ładuje domyślny indeks z / var / www / html /, ale kiedy idę do www.example.com, jego ładowanie /var/www/example.com/ i chcę załadować jeszcze z / var / www / example.com
GAMELASTER
Myślę, że może to być coś z HOSTNAME w Linuksie.
GAMELASTER
Następnie jaka jest nazwa hosta, którą otrzymujesz po wpisaniu hostname w linii poleceń na serwerze? Niezależnie od tego, że edytowałem moje pytanie, aby dodać więcej informacji na temat dostosowywania nazwy hosta serwera w razie potrzeby.
JakeGould
Zmiana nazwy hosta jest naprawiona. Dzięki
GAMELASTER