Neden Apache Ubuntu 14.04'teki sanal konaklar çalışmıyor?


23

Apache 2.4'ü Ubuntu 14.04'e yükledim ve http://localhost/adrese göre iyi çalışıyordu . Ancak, örneğin yeni bir sanal ana bilgisayar eklemeye çalıştığımda http://bow.locve apache'yi yeniden başlattığımda, yeni adres açık http://bow.locve açık değildi http://localhost.

Yapılandırmam:

<VirtualHost *:80>
    ServerName www.bow.loc
    ServerAlias bow.loc
    DocumentRoot /var/www/html/bow/web

    <Directory /var/www/html/bow>
        AllowOverride All
        Options FollowSymLinks MultiViews
        Order allow,deny
        Allow from all
        <IfModule mod_rewrite.c>
            RewriteEngine On
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteRule ^(.*)$ /app.php [QSA,L]
        </IfModule>
    </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>

Sitemi nasıl alabilirim http://bow.loc?



Cevabımı burada kontrol edin . Benzer bir sorunla karşılaştım ve sistem DNS yapılandırmasında sorun olduğu ortaya çıktı.
jmarceli

Yanıtlar:


29

Apache 2.4'ten bu yana, her sanal ana dosya .conf uzantısına sahip olmalıdır.

Her bir ana bilgisayar dosyasını .conf uzantısını içerecek şekilde yeniden adlandırabilirsiniz:

mv /etc/apache2/sites-available/example.com /etc/apache2/sites-available/example.com.conf

Sanal ana bilgisayarı eklemek için a2ensite komutunu kullanın:

a2ensite example.com.conf

Ve Apache'yi yeniden yükleyin:

service apache2 reload

Teşekkürler! Ve bu işlemlerden sonra /etc/hostsdosyayı el ile değiştirmem ve ana bilgisayar eklemem gerekmez mi? Apache otomatik olarak yeni ana bilgisayarlar yazacak mı?
Victor Bocharsky

Apache otomatik olarak yeni ana bilgisayarlar yazmaz, manuel olarak yazmalısınız. CMIIW
Ari Pratomo

Yani, benim config haklı ve sorun ana bilgisayar eklemeyi unuttum sırada/etc/hosts
Victor Bocharsky

Diğer bir yol apache2.conf dosyasını değiştirip ".conf" uzantısını "IncludeOptional sites etkin / *" direktifinden kaldırmaktır. Web sitesi alan adlarını dosya adları olarak kullanıyorum, bu yüzden fazladan ".conf" şartını beğenmedim.
lepe

17

Ana bilgisayar eklemeyi unuttum /etc/hosts:

127.0.0.1   localhost
127.0.0.1   bow.loc

Apache'nin otomatik olarak yaptığını sanıyordum.


Bunu daha önce bir sunucuda yapmak zorunda kalmamıştım. Yine de istemciden test amaçlı olarak yapıyorum. Burada ne dediğini açıklayabilir misin?
flickerfly

@ flickerfly Ne demek istiyorsun? Apache
Sanal sunucuma

Bunu da eklemeyi unuttum! : P
Rishi Kulshreshtha

Kahretsin, bir tane daha Debian 8 VM'de harcadık! Teşekkürler!!!
lucaferrario

Lucaferrario Haha, ben de. Basit hatalar ortaya çıkarmak zor;) Bir şey değil!
Victor Bocharsky

3

Şey, sunulan tüm bu çözümleri denedim ... ama ne yazık ki hiçbir şey işe yaramadı! Ne yazık ki düzenledi

    /etc/hosts

giriş yapmak

    127.0.1.1 example.com test.com

ve çalıştı!

(Teknik olarak pek konuşmuyorsam özür dilerim!)



-3
Options FollowSymLinks MultiViews

Char + + 'ya ihtiyacınız var: + FollowSymLinks + Çoklu Görüntü

Order allow,deny
Allow from all

Şimdi = Tüm verilenleri iste


Lütfen bunu nereye koyacağınızı ve ne yaptığını açıklayın. Sadece komutları veya yapılandırma eserlerini göndermeyin. Bkz Ben iyi cevap yazmak nasıl?
David Foerster

1
Biri hariç tutmak için - kullanıyorsanız, çeşitli Seçenekler'den önce + veya - koymanız gerekir. Aksi takdirde, gitmek iyidir. Gerekli tüm verilen Apache 2.4 içindir. Sipariş, İzin Ver satırları 2.2 sözdizimidir.
flickerfly
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.