Apache web sunucusunu pencereler altında yükleme. Apache'yi Windows'a Yükleme (7)

Windows platformunda kendi hostmaster veya Apache kurulumu

Bu makale - adım adım talimat yerel bir web sunucusu oluşturma hakkında. Apache 2.4 web sunucusunun bir Windows platformuna nasıl kurulacağını açıklar. Kurulum, Windows XP SP3'te test edildi.

Web sunucusunun bileşimi:

  • Apache 2.4 (sürüm 2.4.10);
  • PHP 5.4 (sürüm 5.4.34);
  • MySQL 5.5 (sürüm 5.5.23).

Bu çalışma ortamı şunları yapacaktır:

  • projelerini test etmek için deneyimli web yöneticileri;
  • acemi web yöneticilerinin ilk sitelerini oluşturmaları için.

Apache 2.4 ve PHP 5.4 dağıtımları VC9'da derlenmiştir (Visual Studio 2008).

Apache 2.4 VC9, Windows'un hemen hemen tüm güncel sürümleriyle (7/8 / Vista / XP SP3) çalışır.

VC9 uygulamalarının çalışması için önce Visual C++ kitaplıklarını güncellemeniz gerekir.

Visual C ++ Kitaplıkları Hizmet Paketini Yükleme

Microsoft web sitesinden vcredist_x86.exe güncelleme dağıtım setini indirin, dosyayı çalıştırın ve güncelleyin.

Apache 2.4 Sunucusunu Kurma ve Yapılandırma

Apache.org, Windows için Apache 2.4 sürümüne sahip değildir. Bu nedenle dağıtım kitini apachelounge.com'dan alacağız. Bu yazı yazılırken en son sürüm Apache 2.4.10'dur.

Ek + VC9 bölümünde, ssl destekli ve desteksiz olmak üzere iki dağıtım seçeneği seçebilirsiniz. İkinci seçenekte duruyoruz ve httpd-2.4.10-win32-VC9.zip arşivini indiriyoruz.

Apache dağıtımının bir kurulum dosyası yoktur. Bu nedenle kurulum manuel olarak yapılacaktır.

Bir klasör oluşturun ve httpd-2.4.10-win32-VC9.zip arşivini açın.

httpd.conf yapılandırma dosyasında, varsayılan yollar C: \ Apache24'tür. Bu nedenle, arşivi bu klasöre açarsanız yapılandırma dosyasında çok daha az düzenleme olacaktır.

Dağıtımı C:\TestServer klasörüne açacağız.

C: \ TestServer \ Apache24 \ conf \ httpd.conf yapılandırma dosyasını düzenliyoruz. Yolları yazarken "\" (ters eğik çizgi) karakteri yerine "/" (eğik çizgi) karakterini kullanın. Linux ve Unix işletim sistemlerinde yollar bu şekilde yazılır. Ancak Apache, orijinal olarak bu işletim sistemleri için özel olarak geliştirilmiştir.

C: / Apache24 metnini C: / TestServer / Apache24 ile toplu olarak değiştiriyoruz.

ServerName parametresinin değerini belirledik. SunucuAdı yerel ana bilgisayar: 80

ServerAdmin parametresinin (yönetici e-postası) değerini ayarlayın. SunucuYöneticisi

DocumentRoot parametresinin değerini ayarlayın (site belgelerinin konumu). DocumentRoot C: / TestServer / Apache24 / htdocs

Site belgelerini sunucudan ayrı tutmak isteyebilirsiniz. Örneğin, C: \ MySites klasöründe. Daha sonra bu parametre değiştirilebilir. DocumentRoot C: / Sitelerim

Apache yürütülebilir dosyaları C:\TestServer\Apache24\bin klasöründe bulunur. Bu değeri Windows PATH ortam değişkenine ekleyin. YOL = C: \ TestSunucusu \ Apache24 \ bin;

Apache'yi bir hizmet olarak yükleyin. httpd.exe -k kurulumu

Windows Güvenlik Duvarı etkinse, hizmeti yüklerken programın dış bağlantılardan engellenmesiyle ilgili bir mesaj görüntülenir. Hizmetin çalışması için engellemeyi kaldırma izni vermelisiniz.

Apache sunucusunu başlatıyoruz. httpd.exe -k başlangıç

Sunucu performansını kontrol ediyoruz. Tarayıcı komut satırına şu adresi yazın: http: // localhost. Apache kurulumu başarılı olduysa, ekranda İşe yarıyor! yoksa göreceğiz boş ekran.

Sunucu başlamazsa, Apache'nin varsayılan olarak kullandığı 80 numaralı bağlantı noktasının meşgul olup olmadığını kontrol etmelisiniz.

Bu, netstat –anb komutu kullanılarak yapılır.

Bu bağlantı noktası çoğunlukla Skype veya Firefox tarafından kullanılır. Bu durumda ya bağlantı noktasını serbest bırakmalı ya da Apache'yi 8080 bağlantı noktasına taşımalısınız.

Bunun için httpd.conf dosyasındaki ServerName ve Listen parametrelerinin değerlerini değiştirin. SunucuAdı localhost: 8080 Dinle 8080

Ardından httpd.exe -k restart komutu ile servisi restart ediyoruz.

ve yine http://localhost adresine gitmeye çalışıyoruz.

Apache sunucusuyla çalışmanın rahatlığı için, başlangıç ​​menüsüne yükleyebilirsiniz. Windows kısayolu C: \ TestServer \ Apache24 \ bin \ ApacheMonitor.exe'yi işaret ediyor

PHP 5.4'ü yükleyin

Geliştiricinin sitesine gidiyoruz http://windows.php.net/download/. VC9 x86 Thread Safe bölümünde PHP 5.4 dağıtımını bulun ve php-5.4.34-Win32-VC9-x86.zip arşivini indirin.

üzerinde bir klasör oluşturun yerel bilgisayar, C: \ TestServer \ PHP54 olsun ve arşivi açın.

Apache dağıtım kiti ile siteye geri dönüyoruz. Ek + VC9 bölümünde, Apache PHP modülleri ile php5apache2_4.dll-php-5.4-win32.zip arşivini bulun ve indirin.

Arşivde php5apache2_4.dll modülünün en son sürümünün bulunduğu klasörü bulun ve C:\TestServer\PH54 klasörüne yerleştirin.

httpd.conf yapılandırma dosyasına aşağıdaki satırları ekleyin:

LoadModule php5_module "C: / TestServer /PHP54/php5apache2_4.dll" AddHandler uygulaması / x-httpd-php .php # php.ini PHPIniDir "C: / TestServer / PHP54 / php" yolunu yapılandırın

C:\TestServer\Apache54\htdocs klasöründe test.php dosyasını oluşturun. echo "Merhaba Apaçi!"; ?>

Apache'yi yeniden başlatın.

Tarayıcının adres çubuğuna http://localhost/test.php yazın. Ekranda Hello Apache! yazısı görünüyorsa, PHP kurulumu başarılı olmuştur.

Php.ini kurulumu

MySQL veritabanıyla çalışmak için, PHP yapılandırma dosyası olan php.ini'yi yapılandırmamız gerekiyor.

C: \ TestServer \ PHP54 klasöründe iki şablon vardır: php.ini-development ve php.ini-production.

php.ini üretim şablonunu php.ini olarak yeniden adlandırın.

MySQL veritabanı ile çalışmak için kütüphaneler C: \ TestServer \ PHP54 \ ext klasöründe bulunur. Bu yol, php.ini yapılandırma dosyasının extension_dir yönergesinde belirtilmelidir.

Bu parametreyi buluyoruz, satırın başındaki yorum karakterini kaldırıyoruz (bu noktalı virgül) ve yolu yazıyoruz. extension_dir = "C: / TestServer / PHP54 / ext"

PHP'de MySQL veritabanıyla çalışmak için iki kitaplık vardır: php_mysqli.dll - daha yeni ve işte kullanılması önerilir; php_mysql.dll eskidir, ancak çoğu site tarafından kullanılır.

Her iki kitaplığı da php.ini dosyasına kaydetmek daha iyidir. uzantı = php_mysql.dll uzantı = php_mysqli.dll

Düzenlemeleri tamamladıktan sonra Apache sunucusunu yeniden başlattığınızdan emin olun.

MySQL'i Yükleme ve Yapılandırma

http://www.mysql.ru/download/ sayfasına gidiyoruz. Win32 veya Win64 için sürümü seçiyoruz. mysql-5.5.23-win32.msi kurulum paketini indireceğiz.

mysql-5.5.23-win32.msi dosyasını çalıştırın.

Lisans koşullarını kabul ediyoruz, Normal kurulum türünü seçin.

MySQL sunucusunu kurmaya devam edelim.

Ayrıntılı Yapılandırma - ayrıntılı yapılandırma ayarı'nı seçin.

İle sunucu türünü seçiyoruz minimum Gereksinimler belleğe - Geliştirici Makinesi.

Şimdi sunucumuzun hangi veritabanları (InnoDB, MyISAM) ile çalışacağına karar vermemiz gerekiyor.

Çok İşlevli Veritabanı - InnoDB ve MyISAM tarafından desteklenir. Yalnızca İşlemsel Veritabanı - InnoDB tarafından desteklenir. Yalnızca İşlemsel Olmayan veritabanı - myISAM tarafından desteklenir.

InnoDB'yi desteklemeyi seçerken, sonraki adım InnoDB tablolarının nerede saklanacağını seçmektir.

Maksimum eşzamanlı bağlantı sayısı için Manuel Ayarı seçmek ve varsayılanı (15) kabul etmek daha iyidir.

Bu adımda Enable TCP/IP Networking parametresi TCP bağlantılarının desteklenmesini sağlar, bu bağlantıların yapılacağı portu seçer. Katı Modu Etkinleştir parametresi de ayarlanır - MySQL standardına sıkı uyum modu.

Şimdi varsayılan kodlamayı seçmeniz gerekiyor. En iyi seçenek UTF-8 kodlamasıdır. Bu nedenle, Çok Dillilik İçin En İyi Desteği seçiyoruz.

MySQL'in bir Windows hizmeti olarak çalışması için Windows Hizmeti olarak Yükle'yi yükleyin. Bu hizmeti otomatik olarak çalıştırmanız gerekiyorsa, MySQL Sunucusunu otomatik olarak başlatın.

Şimdi yönetici parolasını ayarlayın ve Güvenlik Ayarlarını Değiştir seçeneğini kapatın.

Next ve Execute butonlarına tıkladıktan sonra MySQL kurulumu tamamlanmıştır.

MySQL'in performansını kontrol etmek için Windows Başlat düğmesine basın, MySQL ile çalışmak için yardımcı programı (MySql Server 5.5 MySQL Server Komut Satırı) bulun ve başlatın.

Yönetici şifresini girdikten sonra MySQL komut satırına geçiyoruz.

Veritabanlarını göster komutunu girin;

Veritabanlarının bir listesini görürsek, sunucunun doğru çalıştığı anlamına gelir.

modu bırakıyoruz Komut satırı: çıkış;

Bu, sunucu kurulumunu tamamlar. Mutlu iş!

WindowsTune.ru

WAMP ve XAMPP, Windows 10'da Çalışmıyor mu?

- 10 Ekim 2015Kategoriler: Çeşitli

Windows 10'un "temiz" bir yüklemesini yaptıysanız, Web Uygulaması Hizmetine hiç sahip olmayabilirsiniz (İngilizce Word Geniş ağ Yayıncılık Hizmeti). Bu durumda, WAMP / XAMPP'yi kurduktan sonra, web sunucusunun sorunsuz bir şekilde çalışması gerekir.

Olmazsa, Visual C ++ Yeniden Dağıtılabilir'i yüklemeyi deneyin ve ardından WAMP / XAMPP'yi yeniden yükleyin.

Windows 7'den Windows 10'a resmi yükseltme hazır olur olmaz bu fırsattan yararlanmayı ihmal etmedim. Güncelleme bir patlama ile başladı, her şey yolundaydı, ancak XAMPP'imi yeni işletim sistemi altında çalıştırmayı denediğimde hayal kırıklığına uğradım: Apache web sunucusu başlamadı. XAMPP / WAMP ile ilgili sorunların her Windows güncellemesinde hoş olmayan bir gelenek haline geldiğini unutmayın. Bu sorunu çözmenin iki yolunu buldum.

Seçenek 1: Windows 10'da Apache nasıl çalıştırılır

Bulabildiğim kadarıyla, suçlu "Web Uygulama Hizmeti" tarafından işgal edilen 80 numaralı bağlantı noktasıydı. Bu hizmeti durdurmak ve XAMPP'yi yeniden başlatmak sorunu çözdü. Aşağıda bu hizmeti nasıl bulacağınız ve durduracağınız anlatılmaktadır.

  • "Başlat" düğmesine basın ve "Hizmetler" (veya services.msc) kelimesini yazın.
  • Görünen pencerede, "Web Yayıncılık Hizmeti" satırını bulduğumuz yere iniyoruz.
  • Servise sağ tıklayın ve "Durdur" seçeneğini seçin.

Windows 10'da Apache nasıl başlatılır: "Web Uygulama Hizmetini" Durdurun

Bundan sonra, XAMPP / WAMP'yi yeniden başlatın ve Apache'nin çalışmasını sağlamalısınız.

Ayrıca bkz: Windows 10 Klavye Kısayolları - Genel Kısayol Referansı

Seçenek # 2: Windows 10'da Apache nasıl çalıştırılır

"temiz" den sonra Windows kurulumları 10, yukarıda belirtildiği gibi, hiç "Web Uygulaması Hizmetiniz" olmayabilir. Bu durumda WAMP / XAMPP hala sizin için çalışmıyorsa, sonraki çözümü deneyin. WAMP'ın hizmet vereceği portu değiştirmek gerekiyor. İşte nasıl yapılacağı.

  • WAMP / XAMPP'yi açın.
  • Apache ayarlarına gidin, burada http.conf'u seçin
  • açılan Metin belgesi Dinle 80 satırını bulun.
  • 80 sayısını istediğiniz gibi değiştirin, örneğin 8090.
  • WAMP / XAMPP'yi yeniden başlatın.

Her şey çalışmalı. Ancak artık sunucuya erişirken sürekli olarak bu port numarasını kullanmanız gerekiyor. Örneğin, daha önce http: // localhost / yazdıysanız, şimdi http: // localhost: 8090 / eklemeniz gerekecek.

Bu soruna başka bir çözüm bulduysanız, deneyiminizle ilgili yorumları yazın.

itdistrict.ru

Apache'yi Windows 7'ye Kurmak

Ağda yazarların alıntı yaptığı birçok makale var. detaylı talimatlar hiçbir kullanıcının PHP ve MySql DBMS için Apache Sunucusu kuramaması sayesinde ekran görüntüleri ile. Ancak çoğu, kullanıcıya uzun süre cevap bulamadığı birçok soru bırakıyor. Apache, MySql, PHP'nin ne olduğunu, ne işe yaradığını ve bu ürünlerin nasıl kurulacağını düşünelim.

biraz teori

Apache, Kuzey Amerika Apache kabilesinin adını taşıyan ücretsiz bir http sunucusudur. Windows dahil tüm platformlarda yaygın olarak kullanılmaktadır ve web uygulamaları ve hizmetlerinin geliştirilmesinde fiili standart haline gelmiştir. Bunun yanında alanında da bir standart olan MySql DBMS'yi ve en yaygın ve evrensel betik dillerinden biri olan PHP'yi kurmamız gerekiyor.

Apache (kullanıcıların dediği gibi), kullanıcının ek yapılandırma gerçekleştirmesine gerek kalmadan tüm uygulamaların ve hizmetlerin üzerinde çalışacağının garanti edilmesi bakımından diğer sunuculardan farklıdır. Analoglarla karşılaştırıldığında, Apache, yüksek performans ve düşük bilgisayar kaynakları tüketimi ile ayırt edilmez, ancak herhangi bir uygulamanın kendi temelinde çalışması garanti edilir. Ayrıca burada özelleştirme basitliği ekleyebilir, neredeyse tüm modern platformlarda ve mükemmel belgelerde çalışabilirsiniz.

Şimdi Apache'nin altındaki bir bilgisayara nasıl kurulduğuna bakalım. Windows denetimi 7 (sonraki sürümlerde, süreç neredeyse aynıdır), böylece sunucu gerçek bir barındırma üzerine kurulur.

Kurulum Apache

  • Resmi Apache destek kaynağına gidin ve en son revizyonunu indirin.

Aslında, eski Apache'ler PHP betik dilinin en son sürümleri tarafından desteklenmedikçe, geliştirici için ürünün sürümleri arasında pratikte hiçbir fark yoktur.

  • İndirilen kurulum dosyasını çalıştırın.
  • İlk iki alanı ekran görüntüsündeki gibi dolduruyoruz: her iki satıra da "localhost" yazıyoruz.
  • Kesinlikle herhangi bir posta kutusu ayarladık.
  • ilki, ürünü 80 numaralı bağlantı noktasını kullanacak bir Windows hizmeti olarak kurmaktan sorumludur;
  • ikincisi sunucuyu 8080 numaralı bağlantı noktasına bağlayacak ve ardından her seferinde otomatik olarak başlatması gerekecek.

Ürün geliştiricileri ilk seçenekte durmayı önerir ve bu nedenle biraz aşağıda düşünün. Apache'yi kurarken, dosyalarının depolandığı yola dikkat edin. "users" klasöründe bulunan "public" dizine yüklemek en iyisidir. sistem bölümü sabit sürücünüz.

Kurulum sihirbazını kapattıktan sonra Apache'nin çalıştığından emin olun. Bunu yapmak için tepsiye gidin ve aşağıda gösterilen simgenin varlığını kontrol edin.

Çalışmazsa, komut satırını çalıştırın. Bu, komut yorumlayıcısının (Win + R) metin biçimine "cmd" yazılarak yapılır.

Sunucuyu başlatmak için komut satırına "net start Apache2.2" yazın.

Bu kayıt sadece ürünün 2.2 versiyonu için geçerlidir, diğer versiyonlarda rakamlar uygun olacaktır.

Sunucu, aşağıdaki parametrelerle bir komut yazılarak durdurulur: "net stop Apache2.2".

Apache'yi başlatmak, kapatmak ve yeniden başlatmak için birkaç yönteme daha bakalım. Düzenli çalışma ile sunucuyu yönetmek için komut satırını kullanmak etkisizdir - çok zaman alacaktır. Durumdan çıkmanın yolu, tepsi simgesinin içerik menüsünü kullanmaktır: üzerine sağ tıklayın ve gerçekleştirilecek eylemi seçin.

Aynısı, Windows hizmetlerine veya Hizmetler ek bileşenine erişimi açan uygun yardımcı program aracılığıyla aynı adı taşıyan hizmeti yöneterek yapılır. Başlar Arama dizisi veya "Kontrol Paneli"ndeki "Yönetim".

Apache'yi Yapılandırma

Sunucuyu kurmak için ilk yöntemi seçerseniz, onu başlatmak için yöntemi belirleyebilirsiniz. Düzenli olarak kullanıyorsanız ve bilgisayarınızda ücretsiz kaynaklar varsa, Apache otomatik çalıştırmayı kullanın. Aksi takdirde, hizmetin içerik menüsünden manuel başlatmayı seçin.

Sunucuyu manuel veya otomatik olarak başlattıktan sonra, açın. uygun tarayıcı ve şu adrese gidin: http: // localhost. Aynı adrese sahip boş bir sayfa görünecektir.

Başlamak için aşağıdakileri yapın.

  • Yazılım ürününün dosyalarının bulunduğu klasörde bulunan "htdocs" dizinine gidiyoruz.
  • Html dosyasını ondan sileriz ve sitenin adıyla (mysite) bir dizin oluştururuz.
  • Gelecekteki siteyi http://localhost / mysite girerek ziyaret edebilirsiniz.
  • "conf" klasörüne gidin ve "httpd.conf" dosyasını bir metin düzenleyicide açın (tercihen sözdizimi desteği ile).
  • 227 numaralı satıra gidin ve "hiçbiri" yerine "tümü" yazın. Sonuç "AllowOverride All" olmalıdır.

Ayrıca bakınız: Bilgisayarınızı Windows 7 çöplerinden nasıl temizlersiniz

Bunu yapmak "htaccess" belgesinin kullanılmasına izin verecektir. Genişletilmiş bir Apache yapılandırma dosyasıdır.

  • "#LoadModule rewrite_module module / mod_rewrite.so" metnini içeren satırı arayın ve "#" sembolünü kaldırın.

Bu eylem, NC bağlantılarının oluşturulmasından ve çalıştırılmasından sorumlu modülü etkinleştirir.

  • Yapılan değişiklikleri kaydediyoruz ve Apache'yi yeniden başlattığınızdan emin olun.

PCP'yi kuruyoruz

  • PHP indirme sayfasına gidin ve betik dilinin en son kararlı sürümünü indirin.

Dikkat! msi veya exe formatında yürütülebilir bir dosya değil, bir biz arşivi indirmeniz gerekmeyecek.

  • Bir dizin oluşturun ve 7zip veya Winrar kullanarak arşivi açın.
  • Kapalıysa "httpd.conf" dosyasını açın ve sonuna aşağıdaki metni ekleyin:

"LoadModule php5_module" C: \ Kullanıcılar \ Genel \ php \ php7Apache2_2.dll "

AddType uygulaması / x-httpd-php .php "

İlk satırdaki sayılar ve adres, kullanılan ürünlerin sürümlerine ve dizinlere ve PHP'ye giden yollara bağlı olarak değişecektir.

  • Yine değişiklikleri kaydedin ve Apache'yi yeniden başlatın.

İşlem sırasında bir hata olduğunu bildiren bir bilgi iletişim kutusu göründüğünde, Windows'u yeniden başlatın.

Kurulduğunda tüm PHP yapılandırma parametreleri "php.ini" dosyasında saklanır. Bunun yerine adı "php.ini" ile başlayan belgeler var.

  • Bir yapılandırma dosyası oluşturmak için herhangi birini "php.ini" olarak yeniden adlandırın.
  • Ardından bu belgeyi Windows dizinine kopyalarız, örneğin "C: \ Windows".
  • Sunucuyu, simgesinin içerik menüsünden yeniden başlatıyoruz.

Bu, PHP'nin kurulumunu ve yapılandırmasını tamamlar. Sunucu performansını kontrol etmek için kalır. "htdocs" a gidin ve klasörde herhangi bir adla (Latince daha iyi) ve php uzantılı (örneğin, file.php) bir dosya oluşturun. Bir metin düzenleyici ile açıyoruz ve aşağıdaki kod parçasını giriyoruz:

Şimdi tarayıcı penceresini açın veya büyütün ve adres çubuğuna oluşturulan dosyanın yolunu girin. Bizim durumumuzda, bu: http://localhost/mysite/file.php

Ayrıca bakınız: Yüklemesi uzun sürerse ne yapmalı Windows bilgisayar 7

Her şey yolunda ve hatasız gittiyse, benzer bir görüntü göreceksiniz.

"Yüklenen yapılandırma dosyası" satırına dikkat edin. "php.ini" yapılandırma dosyasının yolu burada belirtilmelidir.

Bu, Windows makinesinde PHP ile Apache kurulumunu tamamlar. Herhangi bir CMS kurmanız gerekirse, DBMS kurulur.

DBMS'yi yükleme

  • Windows sürümünüz ve bitliğiniz için MySql'in güncel sürümünü yüklüyoruz.
  • "İndir" düğmesine tıkladıktan sonra, kayıt olmadan MySql'i indirmek için ekran görüntüsünde vurgulanan bağlantıya tıklayın.
  • Çalışması 4.5 sürümünün .NET Framework kitaplığını gerektirecek olan yükleyiciyi başlatıyoruz.
  • Windows'ta MySql kullanım koşullarını kabul ediyoruz.
  • Anahtarı "Yalnızca sunucu" konumuna getirin.
  • Gereksinimleri kontrol ettikten sonra MySql kurulumunu başlatmak için "Yürüt" düğmesine tıklayın.
  • Veritabanına erişim vermek için kullanılacak MySql için bir şifre belirledik.

Script dili ve MySql ile sunucu kurulumu tamamlandı. Geriye sadece son iki bileşeni etkileşimde bulunabilmeleri için bağlamak kalıyor.

Bunu yapmak için, zaten bilinen "php.ini" yapılandırma dosyasını açın ve ";" dosyasını silin. aşağıdaki veriler doğrultusunda:

uzantı = php_mysql.dll

uzantı = php_mysqli.dll.

Metni bulun “; extension_dir = "ext" "ve bunu aşağıdakiyle değiştirin" extension_dir = "C: \ Users \ Public \ php \ ext" ", burada eşittir işaretinden sonra PHP ile dizinin yolunu ayarlayın.

MySql'nin işlevselliğini test etmek için, "htdocs" dizininde aşağıdaki içeriğe sahip php uzantılı bir dosya (örneğin, file.php) oluşturun:

mysql_connect();

Belgeyi ekranda açtıktan sonra aşağıdaki gibi bir resim görüyorsanız, her şey doğru bir şekilde yapılandırılmışsa, MySql bağlanmıştır ve Apache çalışmaya hazırdır.

(6.008 kez ziyaret edildi, bugün 6 ziyaret)

windowsprofi.ru

Windows 8.1 x64'te Apache x64 kurulumu deneyimim

Klasörler hazırlanıyor
Her şeyin ortalıkta olmasını gerçekten sevmiyorum, bu yüzden başlamak için programların ve sitelerin bulunacağı klasörler oluşturacağız. “C: \” sürücüsünde (veya sizin için daha uygun olan herhangi bir yerde) bir “Sunucu” klasörü oluşturalım:

İçinde 2 klasör oluşturacağız:

C:\Sunucu\web programlarımızın olacağı klasördür

C: \ Server \ domains - ve sitelerimiz bu klasörde olacak Yani, \ web \ klasöründe apache, php, mysql için 3 klasör oluşturacağız:

C: \ Sunucu \ web \ apache \

C: \ Server \ web \ php \ C: \ Server \ web \ mysql \ Ardından, domains klasörüne gidin ve bir \ localhost \ klasörü oluşturun

C: \ Sunucu \ etki alanları \ localhost \

Klasörün içinde 2 alt klasörümüz olacak: public_html - site dosyaları için; günlükler - için metin dosyaları, hangi "kimin" siteye erişimi olduğunu ve sitede hangi hataların göründüğünü kaydeder.

C: \ Sunucu \ etki alanları \ localhost \ public_html \

C: \ Server \ domains \ localhost \ logs \ Bu, klasör yapısını tamamlar, Apache'yi yapılandırmaya devam edin.

Apache yapılandırması
Apache'yi kurmak için Apache'nin kendisine (Cap) ihtiyacımız var. Windows 8.1 x64'e sahip olduğumuz için Apache x64'ü kuracağız. İndirmek için bağlantıyı takip edin:

www.apachelounge.com/download/win64

Ve "httpd-2.4.6-win64.zip" dosyasını indirin. bizim de ihtiyacımız var normal iş Microsoft Visual C ++ 2010 Yeniden Dağıtılabilir Paketi (x64). Bunu yapmak için, bu bağlantıdan indirin:

www.microsoft.com/ru-ru/download/details.aspx?id=14632

Ve kurulumunu yapıyoruz. Apache'den arşivimizi indirdikten sonra açalım. Arşivi açtıktan sonra "Apache24" klasörünü göreceğiz, içine gireceğiz. Bir sürü klasör ve program dosyası görünecek, her şeyi daha önce hazırlanan klasöre açıyoruz:

C: \ Sunucu \ web \ apache \

Şöyle görünmelidir:

C: \ Sunucu \ web \ apache \ bin \

C: \ Sunucu \ web \ apache \ cgi-bin \ C: \ Sunucu \ web \ apache \ conf \ C: \ Sunucu \ web \ apache \ hata \ C: \ Sunucu \ web \ apache \ htdocs \ C: \ Sunucu \ web \ apache \ simgeler \ C: \ Sunucu \ web \ apache \ dahil \ C: \ Sunucu \ web \ apache \ lib \ C: \ Sunucu \ web \ apache \ günlükler \ C: \ Sunucu \ web \ apache \ kılavuz \ C: \ Sunucu \ web \ apache \ modüller \ cgi-bin \, \ htdocs \, \ simgeler \ ve \ manual \ gibi klasörlere ihtiyacımız yok - silebilirsiniz. Klasöre gidelim:

C: \ Sunucu \ web \ apache \ conf \

Ve herhangi bir metin düzenleyiciyle Apache yapılandırma dosyasını - "httpd.conf" dosyasını açın. Bu dosyada, her satır Apache'yi yapılandırmak için yönergeler içerir ve # (karma) işaretiyle başlayan satırlar yorumlar ve açıklamalardır. Yapılandırmaya başlayalım: Apache yapılandırma dosyası # Apache ServerRoot yönergesi “C: / Sunucu / web / apache” # Yerel IP bağlantı noktasını dinliyoruz (standart olarak 80) Dinle 127.0.0.1:80 # ardından Apache LoadModule rewrite_module için uzantı kitaplıklarını bağlayın modüller / mod_rewrite .so LoadModule php5_module "C: /Server/web/php/php5apache2_4.dll" # Apache'ye php uzantılı dosyaların php komut dosyaları olarak yorumlanması gerektiğini söyleyin AddHandler application / x-httpd-php .php # konumu belirtin PHP ayar dosyasının PHPIniDir “C: / Sunucu / web / php” # sunucu adını değiştir SunucuAdı 127.0.0.1:80 # dizine erişimi değiştir Seçenekler Dizinleri içerir FollowSymLinks AllowOverride All Tümünden izin ver # sitelerimizin bulunduğu dizine DocumentRoot “C: / Sunucu / etki alanları” # dizin dosyaları, öncelik sırasına göre. DirectoryIndex index.php index.html index.htm index.shtml

# günlük dosyaları için klasör

ErrorLog “C: /Server/domains/logs/error.log” CustomLog “C: /Server/domains/logs/access.log” # phpMyAdmin için takma ad ekleyin ve cgi Alias ​​​​/ pma için takma adı düzeltin / pma “C: / Sunucu / etki alanları / phpMyAdmin "ScriptAlias ​​​​/ cgi-bin /" C: / Sunucu / web / apache / cgi-bin / "

# cgi yolunu düzenle

AllowOverride Yok Seçenekler Yok Tümünün verilmesini gerektir

# dosya türü

… AddType metin / html .shtml AddOutputFilter .shtml AddType uygulamasını DAHİLDİR / x-httpd-php .php AddType uygulaması / x-httpd-php-source .phps

# Diğer yapılandırmalar:

conf / extra / httpd-mpm.conf dahil conf / extra / httpd-autoindex.conf dahil conf / extra / httpd-vhosts.conf dahil conf / extra / httpd-manual.conf dahil conf / extra / httpd-default.conf BrowserMatch "MSIE 10.0;" bad_DNT RequestHeader unset DNT env = bad_DNT Bu, httpd.conf yapılandırmasını tamamlar. httpd.conf Apache yapılandırma dosyasına ek yapılandırmalar dahil edildi:

conf / extra / httpd-mpm.conf'u dahil et

conf / extra / httpd-autoindex.conf dahil conf / extra / httpd-vhosts.conf dahil conf / extra / httpd-manual.conf dahil conf / extra / httpd-default.conf dosyasını açın “C: \ Server \ web \ apache \ conf \ extra \ httpd-mpm.conf "ve hemen üzerinden geçin.

# pid dosyasını nerede depolayacağımızı belirtin:

PidFile “C: /Server/web/apache/logs/httpd.pid” Kalan parametreleri değiştirmeden bırakın. "httpd-autoindex.conf" dosyasını açalım, sadece oradaki yolu olan satırları değiştirelim:

Takma ad / simgeler / "c: / Sunucu / web / apache / simgeler /"

Seçenekler İndeksler MultiViews AllowOverride Yok Hepsinin verilmesini gerektir Sonraki, "httpd-vhosts.conf" dosyasına gidin, içeriğini silin. Bunu yaptıktan sonra tekrar doldurmaya başlıyoruz: Dosya Apache ana bilgisayarları# örneğin, etki alanı localhost DocumentRoot "C: / Sunucu / etki alanları / localhost / public_html" SunucuAdı localhost ErrorLog "C: /Sunucu/alanlar/localhost/logs/error.log" CustomLog "C: / Sunucu / etki alanları / localhost / logs / access.log "ortak # gelecek için phpMyAdmin ekle (bir klasör oluşturmayı unutmayın) DocumentRoot" C: / Sunucu / etki alanları / phpmyadmin / public_html "SunucuAdı localhost ErrorLog" C: /Sunucu/alanlar/phpmyadmin/logs /error.log "CustomLog" C: /Server/domains/phpmyadmin/logs/access.log "ortak Bu, dosyanın düzenlenmesini tamamlar. Ayrıca, kalan dosyalarda sadece yolları düzenleriz: Dosya "httpd-manual.conf":

AliasMatch ^ / manual (?: / (?: da | de | en | es | fr | ja | ko | pt-br | ru | tr | zh-cn))? (/.*)? $ "C: / Sunucu / web / apache / manuel $ 1"

"httpd-default.conf" dosyasında herhangi bir değişiklik yapılmaz. Bu, Apache yapılandırma kurulumunu tamamlar.

PHP kurulumu
Windows 8.1 x64'e sahip olduğumuzdan ve Apache x64 kurulup yapılandırıldığından, php'nin de x64 olması gerekir. Siteye gidiyoruz:

www.anindya.com/tag/php

Ve php arşivini indirin En son sürüm... Modül olarak php'ye ihtiyacımız var, yani. Bunu yapmak için Thread Safe'i indirin. Arşiv indirildikten sonra açın ve içeriğini "C:\Server\web\php\" klasörüne aktarın. Şimdi "tmp" ve "upload" olmak üzere iki boş klasör oluşturalım. Ardından, bu klasörde "php.ini-development" dosyasını arayın ve "php.ini" olarak yeniden adlandırın. Dosyayı bir metin düzenleyicide açın ve yönergeleri değiştirin (dosyadaki açıklama satırları noktalı virgülle başlar) Ayar php.inishort_open_tag = Açık zlib.output_compression = On post_max_size = 64M include_path = ".; С: \ Sunucu \ web \ php \ içerir" extension_dir = "C: / Sunucu / web / php / ext" upload_tmp_dir = "C: / Sunucu / web / php / upload" upload_max_filesize = 64M uzantı = php_bz2.dll uzantı = php_curl.dll uzantı = php_gd2.dll uzantı = php_mbstring.dll uzantısı = php_mysql.dll uzantısı = php_mysqli.dll uzantısı = php_pdo_mysql.dll uzantısı = php_sockets.dll uzantısı = php_sqlite3.dll; bölümde sunucumuzun saat dilimini belirtiyoruz (http://php.net/date.timezone) date.timezone = "Asia / Yekaterinburg" session.save_path = "С: / Server / web / php / tmp /" Bu php ayarı biter.

MySQL kurulumu
MySQL x64'ü windows altına soket olarak kuruyoruz. Arşivi MySQL x64'ün en son sürümüyle indirin:

dev.mysql.com/downloads/mysql

Sayfanın altında Windows (x86, 64-bit), ZIP Arşivi'ni buluyoruz ve "İndir" düğmesini tıklayın. Sitedeki kayıt sayfasına yönlendirileceksiniz. MySQL arşivini indirmeye başlamak için sayfanın alt kısmındaki "Hayır teşekkürler, sadece indirmemi başlat" seçeneğine tıklayın. Arşivi indirdikten sonra açın ve klasörün tüm içeriğini "C: \ Server \ web \ mysql \" klasörüne aktarın Şimdi MySQL ayarları dosyasını açın - "C: \ Server \ web \ mysql \ my-default.ini" . Tüm içeriğini silip verilerimizi oraya ekliyoruz.

Port = 3306 host = 127.0.0.1 port = 3306 bind-address = 127.0.0.1 enable-named-pipe basedir = "C: / Sunucu / web / mysql /" datadir = "C: / Sunucu / web / mysql / veri / "sql_mode = NO_ENGINE_SUBSTITUTION, STRICT_TRANS_TABLES Hepsi bu. Konfigürasyon dosyasında scriptlerin hem yerel IP hem de soket bağlantıları üzerinden sunucuya erişebileceğini belirtmiştik. Yapacak çok az şey kaldı. Bunun için Apache ve MySQL'in yollarını "PATH" sistem değişkenine ekleyin:

  1. Fare imlecini ekranın sağ alt köşesine sürükleyin
  2. Ara simgesine tıklayın ve şunu girin: kontrol paneli
  3. Sistem -> Gelişmiş'i seçin
  4. Sistem Değişkenleri menüsünden Ortam Değişkenleri'ni seçin, PATH değişkenini bulun ve üzerine tıklayın.
  5. Apache ve MySQL'e giden yolları ekleyin:
; C: \ Server \ web \ apache \ bin; C: \ Server \ web \ mysql \ bin Ardından Apache ve MySQL hizmetlerini kurun. Bunu yapmak için "Win + X" tuş kombinasyonunu kullanın, sol alt köşede bir açılır menü görünecektir. "Komut satırı (yönetici)" seçeneğini seçelim. Apache'yi kurmak için komut satırına şunu girin:

httpd –k kurulumu

MySQL'i kurmak için:

mysqld.exe --install MySQL --defaults-file = "C: \ Server \ web \ mysql \ my-default.ini"

MySQL kullanıcısı için bir şifre belirleyelim. Bunu yapmak için MySQL hizmetini şu komutla başlatın:

Servis başladıktan sonra şifreyi ayarlayın:

mysqladmin –u kök şifreniz Şifreniz

"httpd-vhosts.conf" dosyasına iki site ekledik, tarayıcının bunları görebilmesi için sitelerin adlarının "hosts" dosyasına eklenmesi gerekiyor. Klasöre gidelim:

C: \ Windows \ System32 \ Sürücüler \ vb \

"hosts" dosyasını herhangi bir metin düzenleyici ile açalım (yönetici olarak çalıştır) ve dosyanın sonuna ekleyelim:

127.0.0.1 yerel ana bilgisayar

127.0.0.1 phpmyadmin Dosyayı kaydedin. Apache ve MySQL servislerini başlatma ve durdurma kolaylığı için start-server.bat ve stop-server.bat dosyalarını oluşturalım. Bunu yapmak için "C: \ Server \" klasörüne gidin ve bu iki dosyayı oluşturun. "start-server.bat" içeriği:

NET start Apache2.4 NET start MySQL "stop-server.bat" içeriği:

NET Apache2.4'ü durdur NET MySQL'i durdur Apache, PHP ve MySQL kurulumu şimdi tamamlandı. Sunucuyu test etmek için “C:\Server\domains\localhost\public_html” klasöründe aşağıdaki içeriğe sahip bir “index.php” dosyası oluşturalım:PhpMyAdmin'i yükleyin PhpMyAdmin'in en son sürümünü buradan indirin:

www.phpmyadmin.net/home_page/index.php

İndirilen arşivi açın ve klasörünün içeriğini "C: \ Server \ domains \ phpmyadmin \ public_html \" etki alanımız için klasöre aktarın. "config.sample.inc.php" dosyasını bulun, bir kopyasını alın ve kopyayı "config.inc.php" olarak yeniden adlandırın. Dosyayı bir metin düzenleyiciyle açın ve verileri değiştirin:Dosyayı kaydedip kapatıyoruz. Tarayıcıda "http://phpmyadmin" sitesini açın ve keyfini çıkarın.

Makale hacimli oldu, ancak umarım faydalı olur.

Etiketler:

  • pencereler 8.1
  • apache
  • mysql
  • phpmyadmin

habrahabr.ru

Windows 7 - 10'da PHP 5.6 ve MySQL 5.6 ile Apache 2.4 nasıl kurulur

Bu materyal, Apache web sunucusunu PHP yorumlayıcısının yeni sürümleriyle Windows bilgisayarınıza kurarken acemi web geliştiricileri için vazgeçilmez bir kılavuz olacaktır. Genellikle bu görev için daha basit bir çözüm kullanılır - bir montaj kurmak. Bu, ayarlarla uğraşma zorluğunu ortadan kaldırır. Ancak bir web sunucusunun özelliklerini, nasıl düzgün bir şekilde kurulacağını ve yapılandırılacağını anlamak, bir web geliştiricisinin temel becerilerinden biridir. Bu nedenle, anlayacağız.

Lütfen dikkat: VC11'in verilen sürümlerinin Windows XP altında çalıştırılması imkansız değilse de çok zor olacaktır.

Hazırlık süreci.

İlk önce bundan emin olmalısın Windows sürümü bilgisayarınızda yedinci yaşından büyük değil. Ayrıca bu makalede Apache 2.4 için verilen talimatlar Windows XP için çalışmayacaktır.

İlk olarak, daha önce kurulmuş olan tüm web sunucularını kaldırın. Ardından, hizmetlere gitmeli ve aralarında Apache veya IIS olmadığından emin olmalısınız. Başka bir web sunucunuz varsa, paralel olanın çalışmama olasılığı yüksektir.

Bu bilgisayarda Skype kullanıyorsanız, ayarlarında 80 numaralı bağlantı noktasından bağlantıyı kesmeniz gerekir.

Farklı çözünürlüklerde dosyalar oluşturmak için bir dosya yöneticisine veya kod düzenleyicisine ihtiyacınız olacak.

Klasör yapısına gelince, farklı olabilir, ancak her şeyin% 100 çalışması için dikkate alınması gereken belirli bir yapı için geliştirilen bu talimattı.

Kurulum prosedürüne geçmeden önce D diskinde ayrı bir USR klasörü oluşturmalısınız. Burada sürüm numaralarını belirtmeden apache, php, tmp, www, log klasörlerini oluşturmanız gerekir. Bir dosya yöneticisi veya kod düzenleyici kullanarak www dizininde aşağıdaki dosyaları oluşturun:

  • index.html şunları içerir: Çalışıyor!
  • index.php şunları içerir:

Dosya yöneticiniz veya kod düzenleyiciniz yoksa buradan indirmeniz gerekir. Her geliştiricinin bilgisayarında bu araçlar bulunmalıdır.

PATH sistem değişkenine şunu yazıyoruz:

; D: \ USR \ apache; D: \ USR \ apache \ bin; D: \ USR \ php;

Önemli! Farklı apache ve php sürümleri için yapılandırma dosyalarındaki satır numaralandırma, verilenden farklı olabilir.

Tüm komutlar yalnızca Yönetici adına yürütülür ve dosyaların düzenlenmesi bir istisna değildir.

Apache 2.4 kurulum süreci

Genel olarak, PHP'deki geliştirme süreci ayrı bir web sunucusu anlamına gelmez, çünkü orada yerleşik bir web sunucusu vardır ve kural olarak 1 projenin geliştirilmesi için yeterlidir. Ancak, en azından bu web sunucusuyla çalışmanın tüm inceliklerini ve yapılandırmasını öğrenmek için Apache web sunucusunu kurmanızı ve yapılandırmanızı öneririz. Bu beceri muhtemelen gelecekte sizin için yararlı olacaktır.

  • İlk olarak, http://www.apachelounge.com/download/VC11/ adresine giderek sistemimiz için Apache 2.4 ikili dosyalarını VC11 indirin. 64 bit işletim sisteminiz olduğunu varsayıyoruz, burada httpd-2.4.16-win64-VC11.zip adlı bir dosyaya ihtiyacınız olacak.
  • Gerekirse tüm ek modülleri buradan indirin. Ama yerine getirmek temel kurulum, zorunlu değildir.
  • Daha önce indirilen arşivden D: \ USR \ apache'ye, Apache24 klasörünün içeriğini açın ve D: \ USR \ apache'ye yerleştirilmesi gereken Apache24 klasörünün içeriği olduğunu ve kendisinin değil. Kurulum gerektirmez.
  • D: \ USR \ apache \ conf \ httpd.conf dosyasında, 37. satırda ServerRoot değerini "d: / USR / apache" ve DocumentRoot (ve Direcroty) değerini "d: / USR / www" olarak değiştirin. 242 ve 243 satırlarında. 218. satırı kaldırın, ardından bunu SunucuAdı localhost: 80 olarak değiştirin.
  • Bu dosyadaki log depolama parametreleri aşağıdaki gibi bulunmalı ve değiştirilmelidir:
  • Ahache hizmetini yükleme. Sadece Admin adına yürütüldüğünü unutmayınız. Bir komut istemi açın ve yapıştırın:
    D: \ USR \ apache \ bin \ httpd.exe -k kurulumu
  • Yükleme işlemi sırasında, açılır hata mesajlarını dikkatlice düşünmelisiniz. Doğru kurulum işlemi ile olmamalıdırlar. Yürütme sonunda bir sonraki satırın tekrar görünmediği durum, bir hata yapıldığını gösterir. Hatalardan kaçınmak için kopyala / yapıştır işlevlerini kullanın.
  • Bir sonraki adım, masaüstünde D: \ USR \ apache \ bin \ ApacheMonitor.exe için bir kısayol oluşturmak ve otomatik indirme için yerleştirmektir. Başlangıç ​​penceresi şu şekilde adlandırılır: WIN8'de WIN + R tuşlarına basın, ardından Shell: Startup yazın ve Tamam'a tıklayın.
  • Apache Monitor'ü Başlatma. Kısayol, sistem tepsisinde vurgulanmalıdır. Üzerine sol tıklayın ve ardından Apache24 -> Başlat'ı seçin.
  • Tarayıcınızda http: // localhost / adresine gidin. Yazıt Çalışıyor!Burada görüntülenmeli! Eğer orada değilse, bir şey yanlış girilmiş demektir. Hatayı belirlemek ve düzeltmek için günlükleri, google'ı vb. okumanız gerekir.

PHP 5.6 kurulum süreci

  • PHP 5.6'yı kurmak için, http://windows.php.net/download/ adresinden en son VC11 x86 Thread Safe veya VC11 x64 Thread Safe'i indirin. Burada VC11 ve Thread Safe gereklidir. Bitliğin Apache'ninkiyle aynı olduğunu lütfen unutmayın. Gerekli dosya muhtemelen şöyle bir ada sahip olacaktır: php-5.6.11-Win32-VC11-x86.zip veya php-5.6.11-Win32-VC11-x64.zip
  • Ardından, arşivin içeriğini D:\USR\php dizinine çıkarmanız gerekir. Kurulum gerektirmez.
  • D: \ USR \ apache \ conf \ httpd.conf dosyasına şunu yazıyoruz:
  • 276. satırda DirectoryIndex değerinin index.html index.php olarak değiştirilmesi gerekiyor.
  • Ardından, Apache'yi yeniden başlatmak için Apache Monitöründe Apache24-> Yeniden Başlat komutunu çalıştırın.
  • Tarayıcıya http://localhost/index.php yazın, gidin ve PHP'nin çalıştığını görün.
  • D: \ USR \ php \ php.ini olarak adlandırılan D: \ USR \ php \ php.ini-development dosyasını kopyalayın
  • Bulmak için arama yapın, açıklamayı kaldırın ve ardından aşağıdaki gibi parametreleri değiştirin:
  • php-m'yi komut satırına ayarlıyoruz ve bağlı olan modüllerin listesine bakıyoruz.
  • Apache Monitor üzerinden Apache'yi yeniden başlatıyoruz.

Apache sanal konakları

  • Bir bilgisayarda birden fazla projenin ertelendiği bir durumda sanal konaklara ihtiyaç vardır. Örnek olarak iki tane kullanalım: s1.localhost ve s2.localhost. Kafa karıştırmamak için aynı adlara sahip klasörleri başlatıyoruz, ancak gerçek hayatta buna gerek yok.
  • Bir sanal ana bilgisayar kullanırken, Apache yapılandırma dosyasının DocumentRoot parametresinin anlamsız hale geldiğini unutmayın. Artık http://localhost / adresinde barındırılan sunucunun ana ana bilgisayarı, yapılandırma dosyasındaki ana sanal ana bilgisayar olacaktır.
  • İlk olarak, c:\Windows\System32\sürücüler\etc\hosts: (yine, yönetici olarak) dosyasına bu satırları ekleyin.
    127.0.0.1 s1.localhost
    127.0.0.1 s2.localhost
  • Bu aşamada, yapılan işten sonra yeniden başlatma zarar vermez. Erişim haklarının olmaması dosyayı değiştirmenizi engelliyorsa, masaüstünde bir kopyasını oluşturup orada değiştirebilir ve ardından geri iade edebilirsiniz.
  • Ardından, dosyaların yerleştirileceği D: \ USR \ www \ s1.localhost ve D: \ USR \ www \ s2.localhost sanal ana bilgisayarları için klasörler oluşturmanız gerekir. Tüm klasörlerde, S1 ve S2'yi içerecek olan index.html ile dosyalar oluşturmanız gerekir. Bu, işin sağlığını izlemenize izin verecektir.
  • Ardından, günlükler için ayrı klasörler oluşturmanız gerekir: D: \ USR \ log \ s1.localhost ve D: \ USR \ log \ s2.localhost - bunlar tüm sitelerin günlüklerini içerecektir. Günlükleri ayrı klasörlerde saklamak daha uygundur, ancak ortak bir klasörde de mümkündür.
  • D: \ USR \ apache \ conf \ httpd.conf dosyasında, sanal ana bilgisayar desteğini başlatmak için Include conf / extra / httpd-vhosts.conf satırını kaldırın.
  • Daha sonra d:\USR\apache\conf\extra\httpd-vhosts.conf içinde editliyoruz. Her sanal ana bilgisayarın ayrı bir VirtualHost bloğu vardır:
  • Şu andan itibaren, ilk sanal ana bilgisayar s1.localhost, sistemin ana ana bilgisayarı olacaktır, çünkü bloğu yapılandırma dosyasındaki ilktir ve http: // localhost / adresine gittiğinizde kullanılabilir.
  • Apache Monitor aracılığıyla Apache'yi yeniden başlatır ve önce http: //s1.localhost/'a, ardından http: //s2.localhost/'a gideriz.

Özetleyelim.

Yeni bir sanal ana bilgisayar eklemek için, D: \ USR \ www, günlükler için - D: \ USR \ günlüğündeki dosyaları için ayrı bir klasör oluşturmanız, adını hosts dosyasında belirtmeniz ve VirtualHost bloğunu eklemeniz yeterlidir. sanal ana bilgisayar yapılandırma dosyası.

İşte o - harika ve korkunç. Konfigürasyon dosyalarını kurmaya karar veren birçok acemi web geliştiricisi, yaşamı boyunca mahvoldu. 🙂 Ama bizler güçlü sinirleri ve çelik mideleri olan insanlarız - o halde hadi gidelim.

İlk kurulum ve yapılandırma

Dağıtım arşivini C:\Apache2 dizinine açın.

Apache sunucusunun ana yapılandırma dosyası olan C:\Apache2\conf\httpd.conf dosyasını bir metin düzenleyicide açın.

Şimdi dayan. Kadınlar, yaşlılar ve çocuklar lütfen devamını okumayınız. Makaleyi sonuna kadar okuyan kişilerin zihinsel durumundan - yazarlar sorumlu değildir. 🙂

httpd.conf dosyasını düzenleme

  1. Mod_rewrite modülünü yüklemek için şu satırı bulun ve yorumunu kaldırın (satırın başındaki "#" işaretini kaldırın):
    LoadModule rewrite_module modülleri / mod_rewrite.so
  2. PHP yorumlayıcısını yüklemek için modül yükleme bloğunun sonuna aşağıdaki satırı ekleyin:
    LoadModule php5_module "C: /php/php5apache2_2.dll"
  3. Aşağıdaki satırı ekleyerek PHP yapılandırma dosyasını içeren dizini tanımlayın:
    PHPIniDir "C: / php"
  4. Satırı bulun ve yorumunu kaldırın:
    SunucuAdı www.example.com:80
    Orijinal sunucu adını ayarlamak için aşağıdaki gibi düzenleyin:
    SunucuAdı yerel ana bilgisayar: 80
  5. Çizgiyi bulun:
    DocumentRoot "c: / Apache2 / htdocs"
    Kök site yönetimi dizinini atayın (biraz sonra oluşturacağız):
    DocumentRoot "C: / apache"
  6. Verilen bloğu bulun:

    Seçenekler FollowSymLinks
    İzin Ver Geçersiz Kıl Yok
    Siparişi reddet, izin ver
    hepsinden reddet

    Ve aşağıdaki ile değiştirin:

    Seçenekler Dizinleri İçerir FollowSymLinks
    İzin Ver Tümünü Geçersiz Kıl
    Tümünden izin ver
  7. Yorumsuz şuna benzeyen orijinal dizin bloğunu (buna ihtiyacımız olmayacak) kaldırın veya yorumlayın:

    Seçenekler Dizinler FollowSymLinks
    İzin Ver Geçersiz Kıl Yok
    İzin ver, reddet
    Tümünden izin ver
  8. Bloğu bulun:

    DirectoryIndex index.html

    Şununla değiştirin:

    DirectoryIndex index.html index.htm index.shtml index.php
  9. Çizgiyi bulun:
    ErrorLog "günlükler / error.log"
    Aşağıdakiyle değiştirin (bu durumda, global sunucu hata dosyasını görüntülemek daha uygun olacaktır):
    ErrorLog "C: /apache/error.log"
  10. Çizgiyi bulun:
    CustomLog "logs / access.log" ortak
    Değişmek:
    CustomLog "C: /apache/access.log" ortak
  11. SSI'nin çalışması için (sunucu tarafı etkinleştirme) aşağıdaki satırlar blokta , bulmanız ve açıklama yapmanız gerekir:
    AddType metin / html .shtml
    AddOutputFilter .shtml DAHİLDİR
  12. Aynı blokta aşağıya ekleyin , iki çizgi:
    AddType uygulaması / x-httpd-php .php
    AddType uygulaması / x-httpd-php-source .phps
  13. Son olarak, satırları bulun ve yorumunu kaldırın:
    conf / extra / httpd-mpm.conf'u dahil et
    conf / extra / httpd-autoindex.conf'u dahil et
    conf / extra / httpd-vhosts.conf'u dahil et
    conf / extra / httpd-manual.conf'u dahil et
    conf / extra / httpd-default.conf'u dahil et

Değişiklikleri kaydedin ve "httpd.conf" dosyasını kapatın

Şimdi "C: \ Apache2 \ conf \ extra \ httpd-vhosts.conf" dosyasını açın ve içinde aşağıdaki değişiklikleri yapın.

Mevcut örnek sanal ana bilgisayar bloklarının kaldırılması ve yalnızca aşağıdakilerin eklenmesi gerekir:
NameVirtualHost *: 80


DocumentRoot "C: / apache / localhost / www"
SunucuAdı yerel ana bilgisayar
ErrorLog "C: /apache/localhost/error.log"
CustomLog "C: /apache/localhost/access.log" ortak

Değişiklikleri kaydedin ve "httpd-vhosts.conf" dosyasını kapatın

Konfigürasyon dosyalarının konfigürasyonu tamamlandı, şimdi Apache2.2 servisini kurmanız gerekiyor.

Resimlerde Apache2.2 hizmetini yükleme

Komut satırını çalıştırın ve "C:\Apache2\bin\httpd.exe -k install" yazın

Apache2.2 hizmeti başarıyla kurulduğunda görmemiz gereken şey budur.

Her şey yolunda gittiyse, devam edelim - yolundan geçtiğimiz Apache2.2 hizmetinin manuel başlatmasını kurun: "Başlat" → "Denetim Masası" → "Yönetim Araçları" → "Hizmetler", hizmet yönetimi penceresinde açılır, "Apache2.2" satırını seçin ve üzerine çift tıklayın, ardından "Genel" sekmesinde, hizmetin manuel olarak başlatılmasını seçin - "Başlangıç ​​türü: Manuel "(" Başlangıç ​​türü: manuel "). Bu, gereksiz hizmetlerin sistemi yüklememesi için yapılmalıdır. Ev bilgisayarının sadece web geliştirme için değil, diğer birçok ihtiyaç için de kullanıldığı düşünülürse, sürekli kullanılmayan servislerin manuel olarak başlatılması ve durdurulması en kabul edilebilir olanıdır.

Sanal ana bilgisayarlar için bir dizin yapısı oluşturma

Diskin kökünde, bir "Apache" dizini oluşturmanız gerekir - bu, sanal ana bilgisayarlarınızı (etki alanlarını), "error.log" global hata günlüğü dosyasını (program tarafından ilk başlangıçta otomatik olarak oluşturulur) içerecektir. genel erişim dosyası "access.log" (otomatik olarak oluşturulur). "Apache" dizininde, başka bir boş klasör oluşturun - "localhost", bu sırada "www" klasörünü oluşturun, ikincisinde eşyalarımızı yerel komut dosyaları biçiminde tutmamız gerekecek. Bu görünüşte garip dizin yapısı, Unix sistemlerinde dizin oluşturmak için benzer bir şema tarafından belirlenir ve gelecekte anlaşılmasını ve kullanımını basitleştirmeyi amaçlar.

Sanal ana bilgisayar oluşturmaya bir örnek

Kendi sanal ana bilgisayarlarınızı kurmanız gerekiyorsa aşağıdakileri yapın:

"httpd-vhosts.conf" dosyasını açın ve içinde aşağıdakine benzer bir blok oluşturun:

# Hostunuzun kökünün olacağı klasör.
DocumentRoot "C: /apache/test.ru/www"
# Sanal ana bilgisayara erişebileceğiniz etki alanı.
SunucuAdı test.ru
# Alan adının takma adı (uzantı adı).
ServerAlias ​​www.test.ru
# Hataların yazılacağı dosya.
ErrorLog "C: /apache/test.ru/error.log"
# Ana bilgisayar erişim günlük dosyası.
CustomLog "C: /apache/test.ru/access.log" ortak

Ardından, "Apache" dizininde, sırayla bir "www" klasörü oluşturan bir "test.ru" klasörü (tıpkı nokta ile olduğu gibi) oluşturun.

Sanal bir ana bilgisayar oluşturmanın bir sonraki adımı, işletim sisteminin C: \ WINDOWS \ system32 \ driver \ etc \ hosts dosyasını değiştirmektir. aç bu dosya ve ona iki satır ekleyin:
127.0.0.1 test.ru
127.0.0.1 www.test.ru

Şimdi komut satırında "C: \ Apache2 \ bin \ httpd.exe -k start" komutunu çalıştırarak Apache sunucusunu başlatın, bir tarayıcı açın, adres çubuğuna "test.ru" veya "www.test.ru" yazın ve kendinizi sanal sunucunuzda bulacaksınız. Dikkatli olun, şimdi sanal ana bilgisayarın adıyla ("www.test.ru", varsa), yalnızca şu satırı silerek veya yorum yaparak orijinal siteye ulaşabilirsiniz: "127.0.0.1 www.test. ru", yukarıda belirtilen dosyada " hosts ".

Apache belgeleri, çalışan sunucu, http: // localhost / manual / adresinde mevcut

Apache, komut satırında "C:\Apache2\bin\httpd.exe -k stop" çalıştırılarak durdurulabilir. Apache'yi yeniden başlatmanız gerekirse, komut satırında "C:\Apache2\bin\httpd.exe -k restart" komutunu çalıştırın.

Apache web sunucusu kurulumu ve yapılandırması artık tamamlandı.

Hizmetleri başlatmak ve durdurmak için toplu iş dosyaları oluşturun

Hizmetler her başlatıldığında "hosts" dosyasını manuel olarak düzenlemenin elverişsiz olduğunu kabul edin, bu nedenle Apache, MySQL hizmetlerinin daha uygun, eşzamanlı başlatılması ve "hosts" dosyasının değiştirilmesi için iki toplu iş dosyası oluşturacağız: başlatmak ve tüm rutin işleri otomatik olarak yürütecek olan stop.

Sanal ana bilgisayarları kullanırken, C: \ apache dizininde iki dosya oluşturmanız gerekir: "hosts" dosyasının ilk içeriğini içeren vhosts-off.txt ve tüm sanal ana bilgisayarları içeren vhosts-on.txt. Yeni sanal ana bilgisayarlar oluştururken bunları C:\WINDOWS\system32\drivers\etc\hosts değil, vhosts-on.txt dosyasına eklemeniz gerekeceğini unutmayın. Aşağıdaki örneklere bir göz atın.

Vhosts-off.txt dosyası (tek bir satır içerebilir):
127.0.0.1 yerel ana bilgisayar

www.test.ru ve test.ru sanal ana bilgisayarlarına sahip bir vhosts-on.txt dosyası örneği:

127.0.0.1 yerel ana bilgisayar
127.0.0.1 www.test.ru
127.0.0.1 test.ru

Aynı C: \ apache dizininde iki toplu iş dosyası oluşturun: start-webserver.bat - hizmetleri başlatmak ve "hosts" dosyasını değiştirmek için ve stop-webserver.bat - hizmetleri durdurmak ve "hosts" dosyasını temizlemek için.

Başlangıç ​​dosyası start-webserver.bat:

@echo kapalı yankı. yoksa C: \ apache \ vhosts-on.txt no_vhosts'a git echo Sanal ana bilgisayarlar oluşturun: kopyala / v / y C: \ apache \ vhosts-on.txt C: \ WINDOWS \ system32 \ sürücüler \ etc \ ana bilgisayarlar yankı. : no_vhosts NET Apache2.2'yi başlat NET MySQL'i başlat

Stop-webserver.bat dosyasını durdurun:

@echo kapalı yankı. yoksa C: \ apache \ vhosts-off.txt no_vhosts echo Hosts dosyasını geri yükleyin: kopyala / v / y C: \ apache \ vhosts-off.txt C: \ WINDOWS \ system32 \ sürücüler \ etc \ hosts echo. : no_vhosts NET Apache2.2'yi durdur NET MySQL'i durdur

Sanal konak kullanmıyorsanız veya "hosts" dosyasını değiştirmeden hizmetleri başlatmak istiyorsanız, C:\apache dizininden vhosts-on.txt ve vhosts-off.txt dosyalarını kaldırmanız yeterlidir.

Hizmetlerle eşzamanlı olarak, içeriği başka bir "start-webserver-monitor.bat" toplu iş dosyası oluşturabileceğiniz sistem tepsisinde Apache sunucusunun durumunu görüntüleyen Apache Monitor programını başlatmak uygundur. sonraki satırın sonuna eklenmiş "start-webserver.bat" dosyasına benzer:

başlat "" "C: \ Apache2 \ bin \ ApacheMonitor.exe"

Şimdi, tüm araç setini çalıştırmak için "start-webserver-monitor.bat" veya "start-webserver.bat" dosyasını çalıştırmanız ve "stop-webserver.bat"ı durdurmanız gerekir. Dilerseniz bu dosyaları yeniden adlandırabilir, "C:\apache" klasöründen başka bir konuma taşıyabilir veya bu dosyalara örneğin masaüstüne kısayollar oluşturabilirsiniz.

Orijinal makale: http://php-myadmin.ru/learning/instrument-apache.html

Web sunucusu hakkında yeterince konuştuk, şimdi kurmamızın ve denememizin zamanı geldi. En yaygın web sunucularının oluşturulmuş bir listesi vardır; seçim yaparken, dağıtıldığı belirli görevler dikkate alınır. Ücretsiz Apache web sunucusundaki seçimimizi durduralım. Giriş seviyesi ve orta seviye web siteleri için ideal buluyorum. Tabii ki, kolay yoldan gidebilirsiniz - çoğu yeni başlayanın yaptığı gibi hazır bir Denwer biçerdöver kurun, ancak bizim durumumuzda sonuca ek olarak teorik bilgi de önemlidir. Ve bugünkü dersten sonra yeteneğin kesinlikle artacak :)

Proje indirme sayfasına gidin - http://httpd.apache.org/download.cgi ve Windows için en son kararlı sürümü bir MSI yükleyicisi olarak indirin (benim durumumda apache_2.2.14-win32-x86-no_ssl.msi idi) . Kuruluma başlayalım. Bizi yanıltabilecek ilk diyalog, sunucu hakkında bilgi girmek için kullanılan diyalogdur:

Kurulumdan sonra sunucumuzu yapılandıracağız ama artık fazla dert etmeyelim "Network Domain" ve "Server Name" alanlarına localhost ve "Administrator" s Email Address " alanına adresinizi girin E-posta(localhost'un ne olduğundan daha sonra bahsedeceğiz). Alt anahtarlara dokunmayın. "İleri" ye basıyoruz, tipik kuruluma katılıyoruz, yine "İleri". Yükleyici, web sunucusunun kurulacağı dizini seçmenizi isteyecektir:

Yol bence çok uzun, hadi kısaltalım C: \ Program Dosyaları \ Apache... Kuruluma devam ediyoruz, tamamlanmasını bekliyoruz. Yükleyiciyi kapattıktan sonra, tepside Apache monitör simgesi görünecektir:

Bu yardımcı program, web sunucumuzu başlatmanıza, durdurmanıza, yeniden başlatmanıza, durumunu öğrenmenize izin verir. Apache, bilgisayar önyüklendiğinde otomatik olarak başlayacak bir hizmet olarak bizimle birlikte kuruldu:

Şimdi yazıda anlattıklarımızı hatırlayalım. Unutmayın, ağa bağlı her bilgisayarın kendi IP adresi vardır. Ama bilgisayarınızda bir tane olmasa bile ağ bağlantısı, en az bir dahili IP adresine sahiptir. Bu adres - 127.0.0.1 ... Tüm bilgisayarlarda aynıdır ve bilgisayarın kendisini gösterir. Yani ağ istemci uygulaması için 127.0.0.1 sunucu adresini belirtirseniz, istemci kendi bilgisayarınızda bulunan sunucuya bağlanmaya çalışacaktır. Ardından, DNS sunucuları tarafından IP adreslerine çevrilen alan adlarından bahsettik. 127.0.0.1 dahili adresinin kendi dahili alan adı vardır - yerel ana bilgisayar... Aynı zamanda, bu adı bir adrese çevirmek için, bu yazışma bilgisayarın kendisinde gömülü olduğundan, bilgisayarın DNS sunucusuyla iletişim kurmasına gerek yoktur.

Bir web tarayıcısı başlatalım ve adres çubuğuna localhost etki alanını girelim:

Umarım ne olduğunu anlamışsınızdır? Localhost etki alanı, 127.0.0.1 IP adresine, web tarayıcısı bu adresten ve 80 numaralı bağlantı noktasından web sunucusuna bağlandı ve HTTP protokolünü kullanarak ana sayfayı istedi. Böylece web sunucumuz çalışıyor, tarayıcıya "Çalışıyor" yazan bir sayfa gönderdi.

Apache yapılandırma dosyalarını düzenlemeye kadar uzanan web sunucumuzu yapılandırmaya başlayalım. Öncelikle kullanışlı, pratik ve aynı zamanda basit bir metin editörü edinmeniz gerekir. Zaten bir tane varsa - tebrikler, talihsiz bir Not Defteri kullanıcısıysanız, bir editör önerebilirim. klasöre git C: \ Program Dosyaları \ Apache \ conf ve dosyayı yeniden adlandırın httpd.conf içinde httpd.conf.bak herhangi bir durumda ilk konfigürasyonun elinizin altında olması. Yeni bir dosya oluştur httpd.conf aşağıdaki içerikle:

ServerRoot "C: / Program Files / Apache" Dinle 80 LoadModule action_module modülleri / mod_actions.so LoadModule takma_module modülleri / mod_alias.so LoadModule asis_module modülleri / mod_asis.so LoadModule auth_basic_module modülleri / mod_auth_basic.so LoadModule_basic /mod_authn_file.so LoadModule authz_default_module modülleri / mod_authz_default.so LoadModule authz_groupfile_module modülleri / mod_authz_groupfile.so LoadModule authz_host_module modülleri / mod_authz_host.so LoadModule authz_user_module modülleri / mod_authz_user.so LoadModule autoindex_module modülleri / mod_autoindex.so LoadModule cgi_module modülleri / mod_cgi.so LoadModule dir_module modülleri / mod_dir.so LoadModule env_module modülleri / mod_env.so LoadModule include_module modülleri / mod_include.so LoadModule isapi_module modülleri / mod_isapi.so LoadModule log_config_module modülleri / mod_log_config.so LoadModule mime_module modülleri / mod.somodule_module_module_module_module_module_module_ _negotiation.so LoadModule rewrite_module modülleri / mod_rewrite.so LoadModule setenvif_module modülleri / mod_setenvif.so SunucuAdı localhost AccessFileName .htaccess ServerTokens prod LogLevel hatası ErrorLog "logs / error.log" DefaultType metin / düz Add-8Charset UTFault DirectoryIndex index.html İzin ver, reddet Tümünden Reddet Tümünü Karşıla TypesConfig conf / mime.types AddType uygulaması / x-compress .Z AddType uygulaması / x-gzip .gz .tgz LogFormat "\ nclient =% h \ ntime =% (% d.% M.% Y% H:% M:% S) t \ npage =% U% q \ nreferer =% (Referer) i \ nreqmethod =% m \ nhost =% (Host) i \ nagent =% (Kullanıcı-aracı) i \ n \ n "mylog

Anlamak. Sunucu Kökü- web sunucumuzun kurulu olduğu yol. Eğik çizgilere dikkat edin. dinle- web sunucusunu "dinleyecek" bağlantı noktası numarasını ve gerekirse IP adresini belirtir (bilgisayarınızda birkaç bağlantı varsa ve bunlardan yalnızca birinde bağlantıları kabul etmeniz gerekiyorsa). Web sunucuları için varsayılan bağlantı noktası olan 80 numaralı bağlantı noktasını belirledik. LoadModule bir web sunucusu modülü yükler, modüller ek yetenekler sağlar. Yapılandırma dosyamız standart modüllerin bir listesini içerir. AddDefaultCharset- varsayılan kodlama, unicode'a (UTF-8) ayarlanmış. Gerisi şu ana kadar bizi pek ilgilendirmiyor.

Ve şimdi en önemli şey. Neden bir web sunucusu kurduğumuzu unuttunuz mu? Bu doğru, gelecekteki sitelerimizde çalışmak. bir kavram var kök dizini- Site içeriğinin bulunduğu dizin yani onu oluşturan dosyalardır. Varsayılan olarak, Apache'mizde kök dizin, dizindir. ... Oraya giderek orada adın altında tek bir dosya bulacaksınız. index.html... Bu, adresinde "Çalışıyor" etiketli ana sayfayı içeren dosyanın aynısıdır. http://yerel ana bilgisayar... Gerçek şu ki, istek (bu arada, url olarak adlandırılır) bir dosya adı içermiyorsa, web sunucusu standart adlardan birine sahip bir dosya arar. Bu isimler (daha doğrusu, bir isim - index.html) yapılandırma dosyamıza yazılır:

DirectoryIndex index.html

Böylece talepte bulunurken http://yerel ana bilgisayar web sunucusu dosyayı arayacaktır C: \ Program Dosyaları \ Apache \ htdocs \ index.html, talep üzerine http: // localhost / dokümanlar - C: \ Program Dosyaları \ Apache \ htdocs \ docs \ index.html(eğer varsa dokümanlar- klasör), istendiğinde http://localhost/news.html - C: \ Program Dosyaları \ Apache \ htdocs \ news.html vb.

Web oluştururken, sitelerinizi bağımsız olarak test edebileceğiniz bir değil, üç yerel (yerel bir makinede bulunur) etki alanına sahip olmak uygundur. Apache, birden fazla siteye hizmet vermenize izin verir, yani her etki alanı için kendi web sunucusu kopyanızı yüklemeniz gerekmez (ayrıca, belirli bir bağlantı noktasındaki bir bilgisayarda yalnızca bir sunucu uygulamasının çalışabileceğini hatırladık). Birkaç alan adı aynı IP adresine başvurabilir. Apache, HTTP isteğinde iletilen alan adına bağlı olarak (Host parametresini hatırlayın, "Web Sunucusu Nasıl Çalışır" makalesi), belirli bir kök dizindeki dosyaları arayabilir. Bu teknolojinin adı "sanal ana bilgisayar".

Yani localhost 127.0.0.1'e tekabül ediyor, aynı adrese karşılık gelen test-domain1, test-domain2 ve test-domain3 olmak üzere üç dahili alan daha oluşturalım. Dosyayı bir metin düzenleyicide açın C:\WINDOWS\system32\sürücüler\vb\hosts... Bu dosyada, alan adları ve IP adresleri arasındaki yazışmaları ayarlayabilirsiniz. Burada yerel ana bilgisayar adresi 127.0.0.1 ile aynı yazışmayı bulacağız. Dosyanın sonuna aşağıdaki satırları ekleyin:

127.0.0.1 test alanı1 127.0.0.1 test alanı2 127.0.0.1 test alanı3

DNS sunucusuna bir arama yapılmadan önce bu dosyada bir eşleşme aranır ve başarılı olursa arama iptal edilir ve bulunan adres kullanılır.

Bir sonraki adım, her alan adının kendi kök dizinini oluşturması ve web sunucumuza bunu anlatmasıdır. Klasörde sil C: \ Program Dosyaları \ Apache \ htdocs dosya index.html ve orada üç klasör oluşturun: test-alan1, test-alan2 ve test-alan3, bu klasörlerin her birinde bir klasör var kayıt- günlükler ve klasör için www- aslında, etki alanı için kök dizini. Dosyanın sonunda C: \ Program Dosyaları \ Apache \ conf \ httpd.confşunları ekleyin:

NameVirtualHost *: 80 SunucuAdı test-domain1 DocumentRoot "C: / Program Dosyaları / Apache / htdocs / test-domain1 / www" ErrorLog "C: / Program Dosyaları / Apache / htdocs / test-domain1 / log / error.log" CustomLog "C: / Program Dosyalar / Apache / htdocs / test-domain1 / log / access.log "mylog SunucuAdı test-domain2 DocumentRoot "C: / Program Dosyaları / Apache / htdocs / test-domain2 / www" ErrorLog "C: / Program Dosyaları / Apache / htdocs / test-domain2 / log / error.log" CustomLog "C: / Program Dosyalar / Apache / htdocs / test-domain2 / log / access.log "mylog AllowOverride All Options -Dizinler SunucuAdı test-domain3 DocumentRoot "C: / Program Dosyaları / Apache / htdocs / test-domain3 / www" ErrorLog "C: / Program Dosyaları / Apache / htdocs / test-domain3 / log / error.log" CustomLog "C: / Program Dosyalar / Apache / htdocs / test-domain3 / log / access.log "mylog AllowOverride All Options -Dizinler

Üç blok Sanal Ana Bilgisayarüç sanal ana makinemizi tanımlayın. Her birine kendi kök dizini verilir - Doküman kaynağı, hata günlüğünün yolu Hata Günlüğü ve erişim günlüğü - Özel Günlük.

Her etki alanının kök dizininde bir dosya oluşturun index.html"test-domain1'den merhaba", "test-domain2'den merhaba" ve "" test-domain3'ten merhaba. "Yapılandırma değişikliklerinin etkili olması için Apache'yi yeniden başlatmanız gerekir (Apache monitör simgesine sol tıklayın - > Yeniden başlat) Herhangi bir hata yapılmadıysa, her şey çalışmalıdır:

Tebrikler, artık üç yerel ana bilgisayarla yapılandırılmış bir web sunucunuz var. Web yöneticisi için genişleme :) Web oluşturmanın temellerini öğrenmeye başlamanın zamanı geldi.

(Apache 2.4.34'ün parametrik yapılandırmasını başka bir makalede okuyabilirsiniz)

Windows'ta Apache yükleme sorunu

Apache Web sunucusunu Windows'a kurmanın ana sorunu, dağıtımın ilk kurulumundan sonra tüm paketin (yürütülebilir programlar, yapılandırma dosyaları, sunucu günlük dosyaları ve Web sayfalarını barındırmak için dosya alanı) tek bir yerde bulunmasıdır. Bu, aşağıdaki nedenlerle ürünün normal çalışmasına müdahale eder:

  • Erişim haklarının farklılaştırılması... Yürütülebilir dosyalar değişmeden kalmalı, yapılandırma dosyaları Web sunucusu yöneticisi tarafından yönetilmeli ve site geliştiricileri ve yöneticilerinin Web sayfalarının dosya alanına erişimi olmalıdır. Program Dosyaları klasörüne erişim hakları, değiştirilmesi gerekmeyen yazılım paketlerinin yürütülebilir modüllerini içerdiği varsayımıyla yapılandırılır.
  • Dağınık sistem klasörleri... Windows Program Dosyaları klasörünün başlangıçta yalnızca yürütülebilir dosyaları içermesi amaçlanmıştı. Boyutu sistem yöneticisi tarafından nispeten sabit olduğu varsayımıyla seçilen ayrı bir birimde olabilir. Kesinlikle hiç kimse bu klasörün kullanıcı verilerini, resim galerilerini ve site dosya arşivini saklamasını beklemiyor.

Bu nedenle, Windows altında Apache kurulumu iki aşamada gerçekleştirilmelidir:

  1. Yazılım paketinin seçilen klasöre ilk kurulumu.
  2. Web sunucusunun dosya alanlarının yerleşiminin optimizasyonu ve konfigürasyonundaki ilgili değişiklik.

Apache yapılandırma dosyalarını değiştirirken şunu unutmayın: eğik çizgi karakteri, dosya ve klasör yolları için ayırıcı olarak kullanılmalıdır Unix ve Linux işletim sistemlerinde olduğu gibi, Windows'taki gibi ters eğik çizgi değil.

İlk kurulum

Kurulum en az Windows XP SP3 gerektirir (bu eski sürüm, bir VC9 veya VC10 derleyicisi ile oluşturulmuş bir Web sunucusu gerektirir). Modern Apache yapıları işletim sistemi Windows 2000 desteklenmiyor.

Apache Windows dağıtım paketi iki "resmi" satıcıdan birinden indirilebilir: Apache Lounge (yalnızca sürüm 2.4, belgelerle birlikte) veya Apache Haus (sürüm 2.4 ve 2.2, belgeler olmadan). Dağıtım satıcılarının paketini C: sürücüsünün köküne açmayı düşündükleri bir ZIP arşividir.

Web sunucusunun dosya yapısının konumunu hala optimize edeceğimiz için, ilk kurulum, Web sunucusunun yürütülebilir modüllerini (exe, lib, so dosyaları ve diğer dosyalar) yerleştirmek için tasarlanan klasörde gerçekleştirilmelidir. değişikliklere tabi değildir). Olabilir sistem klasörü"Program Dosyaları" veya sistem yöneticisinin tercihine göre başka bir dosya.

İlk kurulumdan sonra, "ideolojik olarak" bir web sunucusuna değil, bir web sitesine atıfta bulunan dosyaların bulunduğu "temel" klasörden disk klasörlerindeki başka bir konuma geçmeniz gerekir. Kesinlik için, dağıtım kitini açtıktan sonra, tüm bileşenlerinin "C: \ Program Files \ Apache24" klasöründe bulunduğunu ve web sitesinin "D: \ www" klasöründe bulunacağını varsayacağız.

Dosya alanlarının yerleşimini optimize etme

Kurulumdan hemen sonra Apache yazılım paketinin klasör yapısı şöyle görünür:

Bin - Web sunucusu yürütülebilir dosyaları.
cgi-bin- Web sitesi CGI betikleri.
konf- Web sunucusunun yapılandırma dosyaları.
error - HTTP hata sayfaları.
htdocs- Web sitesinin dosya alanı (diğer bir deyişle, Web sitesinin bulunduğu yer burasıdır).
simgeler - Web sunucusu simgeleri
include - VC derleyicisiyle bir Web sunucusu oluştururken gerekli olan başlık dosyalarını (h dosyaları) içerir.
lib - Web sunucusu kitaplık dosyaları.
kütükler- Web sunucusu günlükleri.
kılavuzlar - HTML belgeleri.
modüller - Web sunucusunun ek yazılım modülleri (yani dosyalar).

Yukarıda listelenen klasörlerden dördü (cgi-bin, conf, htdocs ve logs) Web sunucusunun temel klasörüne sığmaz. Web sitesinin çalışma klasörüne kopyalamanız gerekir: "D: \ www". Orijinal klasörler silinebilir, ancak Web sunucusu kurulumu sırasında bir şeyler ters giderse ilk durumu geri yüklemek için bunlara ihtiyaç duyulabilir. Öte yandan, Web sunucusunun eksik yapılandırılması nedeniyle aynı yerde bırakırsanız, istediklerimiz değil bu klasörler kullanılabilir. Bu nedenle, bunları kopyaladıktan sonra, sırasıyla cgi-bin.0, conf.0, htdocs.0 ve logs.0 olarak yeniden adlandırmak daha iyidir.

Yeni bir dosya yapısına ayarlama

Artık Web sunucusunun gerçek dosya yapısını "D: \ www \ conf \ httpd.conf" yapılandırma dosyasının parametrelerine yansıtabilirsiniz:

  1. Sunucu Kökü"C: / Program Dosyaları / Apache24" # web sunucusunun temel klasörünün yolu
  2. PidFile"D: /www/logs/httpd.pid" # web sunucusu işlem kimliği
  3. Doküman kaynağı"D: / www / htdocs" # web sitesinin barındırıldığı yer burası
  4. <dizin"D: / www / htdocs"> # web sitesinin bulunduğu klasörün özellikleri

  5. Hata Günlüğü"D: /www/logs/error.log" # web sunucusu hata günlüğü
  6. Özel Günlük"D: /www/logs/access.log" ortak # web sunucusu günlüğü
  7. ScriptAlias ​​​​ / cgi-bin /"D: / www / cgi-bin /" # sunucu CGI komut dosyaları klasörü
  8. <dizin"D: / www / cgi-bin"> # sunucu komut dosyaları klasör özellikleri

  9. TürlerYapılandırma D: /www/conf/mime.types # MIME türlerinin açıklamaları
  10. Katmak"D: / www / conf / ekstra / httpd-manual.conf"# beraberindeki belgeler için kurulum

Lütfen 2. adımda yapılandırma dosyasına PidFile parametresiyle bir satır eklemeniz gerektiğini unutmayın, çünkü bu parametre referans yapılandırma dosyasında yoktur. Parametrelerin geri kalanı yapılandırma dosyasında zaten mevcuttur - bunları içeren satırları bulmanız ve orijinal yolları yeni klasörlere değiştirmeniz gerekir.

Madde 10, "http:// localhost: 8080 / manual" bağlantısı aracılığıyla HTML belgelerine erişimi etkinleştirmek için Include parametresiyle ilgili satırın yorumunu kaldırmanız ve dahil edilen yapılandırma dosyasına yeni bir yol belirtmeniz gerektiğini varsayar. Ancak, belgelerin konumu da değiştiği için, "D: \ www \ conf \ extra \ httpd-manual.conf" dosyasını 3. ve 8. adımlara benzeterek ayrıca değiştirmek gerekecektir:

  1. Takma AdMaç^ / manual (?: / (?: da | de | en | es | fr | ja | ko | pt-br | ru | tr | zh-cn))? (/.*)? $ "C: / Program Dosyalar / Apache24 / manuel $ 1"
  2. <dizin"C: / Program Dosyaları / Apache24 / Manuel">

Sunucuyu başlatma ve yapılandırmayı kontrol etme

Web sunucusunun dosya yapısını değiştirdiğimiz için, sunucu yürütülebilir modülünü şu komutla çalıştırmanız gerekir (bunu bir bat veya cmd dosyasına yazabilirsiniz): "C: \ Program Files \ Apache24 \ bin \ httpd.exe " -w -f "D: \ www \ conf \ httpd.conf "-d" C: \ Program Dosyaları \ Apache24 \. "

Özel bir uygulama olarak başlatılan Apache (yani, az önce gösterilen komut satırıyla başlatıldı) + [C] tuş kombinasyonu ile durdurulabilir. Herhangi bir zorluk yaşarsanız aşağıdaki komutu kullanabilirsiniz: taskkill / f / IM httpd.exe

Apache'yi hizmet olarak kurmak için şu komutu çalıştırın: "C:\Program Files\Apache24\bin\httpd.exe" -k yükleme-f "D: \ www \ conf \ httpd.conf" -d "C: \ Program Dosyaları \ Apache24 \."

Aşağıdaki komutları kullanarak Apache Web sunucusu hizmetini başlatın ve durdurun: "C: \ Program Files \ Apache24 \ bin \ httpd.exe" -k başlangıç ve "C:\Program Files\Apache24\bin\httpd.exe" -k dur sırasıyla.

Apache'yi listeden kaldırın Windows hizmetleri"C:\Program Files\Apache24\bin\httpd.exe" komutunu kullanabilirsiniz. -k kaldırma

Web sunucusunun doğru kurulumunun ve ilk yapılandırmasının doğrulanması, bir Web tarayıcısına URL: "http: // localhost: 80 /" girilerek gerçekleştirilir. Her şey doğru yapıldıysa, "Çalışıyor!" Yazılı bir sayfa.

Ekteki belgeler HTML biçiminde kurulmuşsa, "http: // localhost: 80 / manual /" bağlantısında mevcut olmalıdır.

Apache, site erişimini "D: \ www \ conf \ access.log" dosyasına kaydeder. Sunucu sorunları ile ilgili bilgiler "D:\www\conf\error.log" dosyasına yazılır. Analiz etmek, özellikle CGI betiklerinin yürütülmesini özelleştirirken faydalı olabilir.

Ek özelleştirme

Yukarıda listelenen ayarlara ek olarak, sunucunun istemci bağlantılarını kabul edeceği ağ arayüzü ayarlarını (ip-adresi ve TCP port numarası) belirleyen Listen parametresinin değerini kontrol etmeniz gerekir. Apache, tek bir Web geliştiricisi tarafından kullanılıyorsa, aşağıdaki yapılandırma önerilir:

Dinlemek 127.0.0.1:8080 # ağ arayüzü parametreleri

TCP bağlantı noktası numarası, bilgisayarda yüklü olan diğer yazılımlarla çakışmamalıdır. Örneğin, standart HTTP bağlantı noktası 80, genellikle Skype istemcisi tarafından kullanılır. Sunucuyu ağ üzerinde paylaşmak için, Web sunucusunun kurulu olduğu bilgisayarın doğru IP adresini veya ağ adını sağlamalısınız.

Apache web sunucusu en çok PHP ve Perl gibi sunucu tarafı betik dilleri için yorumlayıcılarla birlikte kullanılır. Web sitesinde PHP komut dosyalarını etkinleştirmek için (PHP'nin C: \ PHP5 klasörüne kurulduğu varsayılarak), "D: \ www \ conf \ httpd.conf" yapılandırma dosyasına aşağıdaki satırları ekleyin:

  1. LoadModule php5_module " C: / PHP5/php5apache2_2.dll "
  2. AddType uygulaması / x-httpd-php .php
  3. PHPIniDir "C: / PHP5"

Unutulmamalıdır ki php.ini yapılandırma dosyası, php.ini geliştirme dosyasına (sunucu Web siteleri geliştirmek için kullanılıyorsa) veya php.ini üretimine (bu gerçek bir Web dosyasıdır) dayalı olarak PHP5 klasöründe bulunmalıdır. sunucu). PHP modüllerinin ihtiyaç duydukları tüm dinamik kitaplıkları bulması için, C: \ PHP5 klasörünün yolunun Windows ortamının PATH değişkenine kaydedilmesi gerekir.

Perl dilinde sunucu tarafı CGI betikleri zaten iki koşul altında yürütülmelidir:

  1. Perl dil yorumlayıcısı bu bilgisayarda kuruludur.
  2. Komut dosyalarının ilk satırı, Perl yorumlayıcısının yolunu doğru bir şekilde belirtir, örneğin: #! C: /PERL/bin/perl.exe -w

Kontrol etmek için, URL'yi tarayıcıya girebilirsiniz: http://localhost:8080 / cgi-bin / printenv.pl, printenv.pl komut dosyasının ilk satırını paragraf 2'ye uygun olarak düzelttikten sonra.

Windows'ta Apache Web sunucusunu yapılandırmanın geri kalan nüansları bu makalenin kapsamı dışındadır.

İndirmek Apache 2.2 web sunucusu dağıtımı burada bulunabilir: httpd-2.2.20-win32-x86-openssl-0.9.8r.msi. Bu makale, bu dağıtım kitinin kurulumuna dayanmaktadır. 2.2.20'nin altındaki tüm Apache HTTP Sunucusu sürümleri ciddi bir güvenlik açığına karşı savunmasızdır ve bu güvenlik açığı, sayfanın altındaki bağlantı kullanılarak bilgileri okunabilir. Bugün, Apache 1.3'ün daha önce popüler olan ve en kararlı olarak kabul edilen dalı zaten güncelliğini yitirdi ve Apache HTTP sunucusunun geliştiricileri, Apache 2.2'nin en son kararlı sürümünün yüklenmesini tavsiye ediyor. Apache'nin en yeni sürümleri resmi web sitesinde mevcuttur: Apache HTTP Sunucusu. Bir Apache dağıtımının nasıl seçileceğine ilişkin bilgiler makalede yayınlanmıştır.

Apache 2.2'yi Windows'a Yükleme

Apache 2.2 Sunucusunu Windows XP'de Yükleme ve Çalıştırma entegre bir yükleyici ile ikili bir dağıtım kullanmak zor değildir (makaledeki talimatlar çoğunlukla kurulum için geçerlidir). Windows Vista ve Windows 7, testler yalnızca Apache'nin Windows XP'ye yüklenmesi için yapılmıştır).

Bilgisayarın bağlı olduğu durumda lütfen unutmayın. yerel ağ/ İnternet - Apache çalıştıran sitelere, varsayılan olarak, yerel ağ veya İnternet'in tüm kullanıcıları tarafından erişilebilir.

Apache 2.2 yükleyici dosyasını "httpd-2.2.20-win32-x86-openssl-0.9.8r.msi" başlattıktan sonra, "İleri" düğmesini tıklayın, kabul edin lisans anlaşması... "Ağ Etki Alanı" ve "Sunucu Adı" alanlarına "localhost" (tırnak işaretleri olmadan) girin. "Yöneticinin E-posta Adresi" - yöneticinin e-posta adresi, örneğin: [e-posta korumalı] Apache'yi, Windows başladığında otomatik olarak başlatılan bir hizmet olarak 80 numaralı bağlantı noktasındaki tüm sistem kullanıcıları için kullanılabilir hale getiren "Hizmet olarak Bağlantı Noktası 80'deki Tüm Kullanıcılar - Tavsiye Edilen" alanını varsayılan olarak seçili bırakın.

Sihirbazın bir sonraki adımı (Kurulum Türü) yükleme türünü seçmektir: Tipik ve Özel. "Özel"i seçin ve "İleri"ye tıklayın. Ardından, "Değiştir" düğmesine tıklayarak kurulum yolunu "C:\apache2.2.20" olarak değiştirmeniz ve varsayılan bileşenleri olduğu gibi bırakmanız gerekir. İleri ve Kur'a tıkladıktan sonra Apache HTTP Sunucusu kurulacaktır.

Yükleme işlemi sırasında, otomatik olarak kapanacak olan 2 siyah pencere görünecektir (bunları manuel olarak kapatamazsınız). Kurulum başarılı olursa, Windows sistem saatinin yanında yeni bir simge görüntülenecektir. Simgede yeşil bir üçgen varsa - Apache çalışıyor, kırmızı kare hizmetin herhangi bir nedenle başlamadığı anlamına gelir.

Tarayıcının adres çubuğuna http: // localhost / adresini yazarak, Apache'nin beklendiği gibi çalıştığını gösteren büyük, kalın bir yazıt olan "Çalışıyor" yazan bir sayfa görünmelidir. Apache çalışıyor ancak "Çalışıyor" yazısı görünmüyorsa, güvenlik duvarında nedenini aramalı ve bu makalenin "Apache'yi başlatırken hatalar" bölümünü okumalısınız.

Hatanın nedenini öğrenebilir, daha doğrusu Apache'yi başlatırken hata mesajını görüntüleyebilirsiniz. pencere konsolları("Başlat" -> "Çalıştır" -> cmd -> "Tamam") hizmeti manuel olarak başlatarak. Apache konsol komutları:

    httpd.exe -k başlangıç
    httpd.exe -k durdur
    httpd.exe -k yeniden başlat

Windows'un hata vermesini önlemek için:

"httpd.exe" dahili veya harici değil
komut, yürütülebilir program veya toplu iş dosyası.

Windows'ta Apache'nin bin dizinine giden yolu, örneğin htpasswd.exe gibi Apache komut satırı yardımcı programlarını hızlı bir şekilde başlatmak için gelecekte yararlı olabilecek Path değişkenine kaydetmek gerekir. Bu, "Başlat" menüsünü açarak, "Bilgisayarım"ı bularak ve üzerine sağ tıklayarak beliren listeden "Özellikler"i seçerek yapılabilir. Ardından "Gelişmiş" sekmesini seçin ve "Ortam Değişkenleri" düğmesini tıklayın. "Sistem Değişkenleri" penceresinde "Yol" değişkenini seçin ve "Değiştir" düğmesine basın. "Değişken değerleri" alanının en başına, Apache'nin bin dizinine giden yolu ekleyin:

Windows Path değişkeninin yolunu Apache bin dizinine ekleme

C: \ apache2.2.20 \ bin;

Yolda yapılan değişikliklerin geçerli olması için, bilgisayarı yeniden başlatmak için.

Apache başlatma hataları

Apache sunucusunu manuel olarak başlatmak, PHP'yi bir modül olarak bağlarken ve daha fazla yapılandırırken hataları tespit etmek için çok faydalı olacaktır. Ne yazık ki, standart konsolu kullanarak Apache'yi başlatırken ve yeniden başlatırken hata mesajları görüntülenmez.

Apache'yi başlatırken ortaya çıkan en yaygın hatalardan biri, 80 numaralı bağlantı noktasının Skype veya ISS gibi başka bir program tarafından kullanılmasıdır. Sonuç olarak sunucu httpd.exe -k start komutu ile başladığında şu mesajı alıyoruz:

httpd.exe: Sunucunun tam etki alanı adı, SunucuAdı için 192.168.1.2 kullanılarak güvenilir bir şekilde belirlenemedi
(OS 10048) + svўeyu Yercheh ° rhЄё yufeyu sheyayuy№chyutreshh rfyoher ёyuhЄr (yoyuЄyuyuy / yokhtyuschrfyohё / yayuy). : make_sock: 0.0.0.0:80 adresine bağlanamadı dinleme soketi yok, kapatılıyor
Günlükler açılamıyor
Yukarıdaki hataları veya mesajları not edin ve çıkmak için tuşuna basın. otuz...

"0.0.0.0:80 adresine bağlanamadı dinleme soketi yok" mesajı 80. bağlantı noktasının zaten kullanımda olduğunu gösterir. Windows komut satırında çalıştırarak ve tüm liste görüntülenene kadar birkaç dakika bekleyerek 80 numaralı bağlantı noktasını hangi işlemin işgal ettiğini görebilirsiniz. Şimdi, Apache'ye müdahale eden yazılımı farklı bir bağlantı noktasında (program ayarlarında) yapılandırmanız, kaldırmanız veya Apache'yi farklı bir bağlantı noktasına yeniden yapılandırmanız gerekir.

Kritik olmayan ancak dikkat çekici bir hatayı kaldırmak için: "httpd.exe: Sunucunun" tam etki alanı adı güvenilir bir şekilde belirlenemedi, SunucuAdı için 192.168.1.2 kullanılarak ", httpd.conf'daki satırın yorumunu kaldırmanız gerekir. :

SunucuAdı yerel ana bilgisayar: 80

Ayrıca Windows komut satırından aşağıdaki komutları kullanarak bir Windows hizmetini başlatabilir ve durdurabilirsiniz:

    net start apache2.2 (Başlat)
    net stop apache2.2 (Durdur)

Sadece bu durumda, Apache'yi başlatırken verilen hata mesajları bilgilendirici olmayacaktır.

Apache HTTP sunucusunun durumunu Windows hizmetlerini kullanarak da görüntüleyebilirsiniz: "Başlat" -> "Denetim Masası" -> "Yönetimsel Araçlar" -> "Hizmetler" -> "Apache 2.2". Ayrıca HTTP sunucusunu burada durdurabilir ve başlatabilirsiniz.

Apache yapılandırması

Temel ile dosya Apache ayarları httpd.conf varsayılan olarak Apache kurulum dizininin kökünde bulunan conf dizininde bulunur (Apache, makaledeki talimatlara göre kurulursa, Apache dizini: C: \ apache2.2.20). Apache yapılandırma dosyasına şu yollarla ulaşabilirsiniz: "Başlat" -> "Tüm Programlar" -> "Apache HTTP Sunucusu 2.2" -> "Apache Sunucusunu Yapılandır" -> "Apache httpd.conf Yapılandırma Dosyasını Düzenle".

Her şey httpd.conf dosyasındaki yorum satırları Apache HTTP Sunucusu tarafından anlaşılmayan ve yalnızca yöneticiye metinsel açıklamalar olarak hizmet eden, bir "#" karakteriyle başlayın. Apache yapılandırma dosyasındaki tüm yorumları kaldırarak, sunucu ayarlarının daha fazla algılanmasını ve düzenlenmesini önemli ölçüde kolaylaştırabilirsiniz. Yorumları silmeden önce, orijinal httpd.conf dosyasını farklı bir adla olduğu klasöre kaydetmeniz önerilir, örneğin: httpd.conf.orijinal.

Apache yapılandırma dosyasındaki yorumları kaldırırken gereksiz öğeleri kaldırmamaya dikkat edin. Yalnızca "#" karakteriyle başlayan satır silinmelidir. Örneğin, aşağıdaki örnekte "#" karakteriyle başlamayan tüm satırları bırakmalısınız: .

Apache yapılandırma dosyasının isteğe bağlı bir parçası httpd.conf

#
# Bu, DocumentRoot'u neye ayarladıysanız değiştirilmelidir.
#

# Seçenekler yönergesi hem karmaşık hem de önemlidir. Bakınız
# http://httpd.apache.org/docs/2.2/mod/core.html#options
# daha fazla bilgi için.
#
Seçenekler Dizinler FollowSymLinks
#
# AllowOverride, .htaccess dosyalarına hangi yönergelerin yerleştirilebileceğini kontrol eder.
# "Tümü", "Hiçbiri" veya anahtar kelimelerin herhangi bir kombinasyonu olabilir:
# Seçenekler FileInfo AuthConfig Limiti
#
İzin Ver Geçersiz Kıl Yok

Apache HTTP Sunucusunu yapılandırmaya başlamadan önce, tüm httpd.conf içindeki dosyalara giden yollar bölünmelidir eğik çizgi "/" Windows'ta kullanılan geriye doğru "\" yerine. Bu, bazı sorunlardan kaçınmak için gereklidir.

httpd.conf dosyasındaki dosya yollarında "doğru" eğik çizgi "/" kullanımına bir örnek

ServerRoot "C: /apache2.2.20"

Ayrıca şunu bilmelisin httpd.conf'ta değiştirilen ayarların etkili olması için, her düzenlemeden sonra, Apache sunucusunu yeniden başlatın veya durdurun ve yeniden başlatın.

Apache modülü olarak PHP bağlantısı

httpd.conf içinde LoadModule ile başlayan ve en son eklediğimiz satırdan sonra birçok satır buluyoruz:

LoadModule php5_module "c: /php5.2.17/php5apache2_2.dll"
PHPIniDir "c: /php5.2.17"

İlk satır php5apache2_2.dll modülünü yükler, ikinci satır PHP yorumlayıcısına ana PHP yapılandırma dosyası php.ini'yi nerede arayacağını söyler. PHP'nin önceki sürümlerinde, php.ini dosyasını ana Windows dizinine taşımak gerekiyordu, bu da PHP'yi yapılandırırken bazı karışıklıklara neden oluyordu.

Ardından, Apache'ye index.php dosyasının bir istemci isteğinde bulunduğunda başlatılan bir dizin dosyası olduğunu belirtiyoruz (örneğin, http: // www .. Bunu yapmak için yönergenin parametrelerini değiştirin. DizinIndexüzerinde:

DirectoryIndex index.php index.html

Ayarlar dosyasını kaydettikten sonra, Apache'yi yeniden yükle Değişikliklerin yürürlüğe girmesi için. Hata durumunda hata mesajını görebilmeniz için yeniden başlatmanız bile değil, komut satırını kullanarak Apache'yi kapatıp açmanız önerilir.

Şimdi PHP betiklerinin yürütüldüğünden emin olmanız gerekiyor. Bunu yapmak için, C: \ apache2.2.20 \ htdocs \ dizininde aşağıdaki içeriğe sahip bir phpinfo.php dosyası oluşturmanız gerekir:

phpinfo();

Bundan sonra, http://localhost/phpinfo.php adresindeki tarayıcıda bir sayfa açarak, PHP yorumlayıcı ayarları hakkında bilgi içeren bir sayfa görünecektir. Bunun yerine komut dosyası kodu görüntülenirse, PHP modülü bağlı değildir.

Apache günlük dosyaları

Apache günlük dosyalarından birçok ilginç şey öğrenebilirsiniz, örneğin, Apache neden başlamadı? Varsayılan olarak, ana günlük dosyaları burada depolanır: C: \ apache2.2.20 \ günlükler. Uygun httpd.conf parametrelerini yapılandırarak konumlarını değiştirebilirsiniz:

  • Hata Günlüğü- hata günlüğüne giden yol.
  • Özel Günlük- erişim günlüğüne giden yol.

Sanal Ana Bilgisayar Apache

Apache sanal ana bilgisayarları, birkaç farklı siteyi işlemek için tek bir Apache sunucusu tarafından kullanılır. VirtualHost yönergesi hakkında ayrıntılı bilgi: "". Aşağıda, Windows'ta yüklü olan Apache'de birden çok site için desteğin nasıl açılacağına ilişkin bir örneği ele alacağız.

Öncelikle, tüm sitelerin dosyalarının saklanacağı bir ana klasör oluşturmanız gerekir: C: \ www. Bu dizinde, siteler için Apache dosyalarını ve yapılandırmalarını içerecek olan mysite.lc ve phpmyadmin.lc olmak üzere iki alt klasör oluşturun: http://mysite.lc ve http://phpmyadmin.lc. Ayrıca, mysite.lc ve phpmyadmin.lc klasörlerinin her birinde üç alt klasör daha oluşturun: conf, log ve public. Sonuç olarak, aşağıdaki yapıyı almalısınız:

Etki alanı bölgesi "lc" (İngilizce "yerel" kısaltması), açılan sitenin yerel bilgisayarda bulunduğu gerçeğinin bir tanımı olarak hizmet edecektir. Windows'un tüm istekleri yerel sitelere olması gereken yere yönlendirmesi için düzenlemeniz gerekir. ana bilgisayar dosyası(örneğin, not defteri kullanarak) şu dizinde bulunur: C:\WINDOWS\system32\sürücüler\vb\. "127.0.0.1 localhost"tan sonra (aslında, eklenen satırların dosyadaki konumu herhangi bir şey olabilir), iki satır eklemeniz ve değişiklikleri kaydetmeniz gerekir:

127.0.0.1 sitem.lc
127.0.0.1 phpmyadmin.lc

Şimdi tarayıcının adres çubuğuna http://mysite.lc ve http://phpmyadmin.lc adreslerini giriyoruz, ardından kalın harflerle büyük bir yazı ile bir sayfa açacak: "Çalışıyor".

Hosts dosyası, herhangi bir etki alanına her bağlanmaya çalıştığında sistem tarafından yoklanır, bu nedenle, üzerinde yapılan değişiklikleri uygulamak için herhangi bir şeyi yeniden başlatmanız gerekmez. Verileri ana bilgisayarlara kaydetmeden önce http://mysite.lc alan adını açmayı denerseniz, bu başka bir konudur. Aynı zamanda, tarayıcı, büyük olasılıkla, etki alanının bulunmadığını ve bu sayfayı zaten değiştirilmiş hosts dosyasıyla yeniden açtığınızda, sonuç değişmeyecek olan DNS önbellek bilgisine yazacaktır. Bu durumda, istenen sonucu elde etmek için DNS önbelleğini temizlemeyi denemeniz gerekir: "Başlat" -> "Çalıştır" -> "cmd" -> ipconfig /flushdns. Bu işe yaramazsa, siteleri diğer tarayıcılarda açmayı deneyin. %100'e yardımcı olan aşırı bir önlem, bilgisayarı yeniden başlatmaktır.

Şimdi Apache'ye her sitenin kendi dizinleri olduğunu ve bunun için kapsayıcı yönergelerine ihtiyacınız olduğunu "açıklamanın" zamanı geldi. ... Ancak bundan önce test siteleri olacak olan index.php isimli iki dosyayı oluşturup düzenlemeniz ve bunları "public" alt klasörlerine yerleştirmeniz gerekiyor.

C: \ www \ mysite.lc \ public \ için Index.php dosya metni

echo "Sitem";

C: \ www \ phpmyadmin.lc \ public \ için Index.php dosya metni

echo "Phpmyadmin";

Şimdi, conf klasörlerinde sanal ana bilgisayarlar için vh.conf yapılandırma dosyalarını oluşturun:

C: \ www \ mysite.lc \ conf \ dizinindeki mysite.lc için vh.conf


# Ana site adı
SunucuAdı sitem.lc

# sayia'nın ek isimleri
# * .mysite.lc - mysite.lc için tüm alt alanlar mevcuttur
ServerAlias ​​​​* .mysite.lc

DocumentRoot "c: /www/mysite.lc/public"
SunucuYöneticisi [e-posta korumalı]

# Site günlüklerine giden yollar
ErrorLog "c: /www/mysite.lc/log/error.log"
CustomLog "c: /www/mysite.lc/log/access.log" birleştirildi

# Site dizini ayarları

İzin ver, reddet
Tümünden izin ver

C: \ www \ phpmyadmin.lc \ conf \ dizinindeki phpmyadmin.lc için vh.conf


SunucuAdı phpmyadmin.lc
ServerAlias ​​​​* .phpmyadmin.lc
DocumentRoot "c: /www/phpmyadmin.lc/public"
SunucuYöneticisi [e-posta korumalı]
ErrorLog "c: /www/phpmyadmin.lc/log/error.log"
CustomLog "c: /www/phpmyadmin.lc/log/access.log" birleştirildi

İzin ver, reddet
Tümünden izin ver

httpd.conf'da, en alttan sanal ana bilgisayarları başlatıyoruz ve her site için vh.conf yapılandırma dosyasını yüklüyoruz:

httpd.conf'ta sanal ana bilgisayarları yapılandırma

# Sanal ana bilgisayarları bağlama
NameVirtualHost *: 80

Yeni ayarları uygulamak için Apache sunucusunu yeniden başlatıyoruz.

Makalenin son güncellenme tarihi: 2011/09/08

Apache - kurulum ve yapılandırma.

İşler iyi. Apache yerel makinede çalışıyor. Apache yerel ağ üzerinde çalışır. Ancak Apache sunucusu İnternet'te mevcut değildir.

Tüm yerel ağ, UserGate 4 proxy sunucusu aracılığıyla İnternet'e bağlıdır.
Bir web sunucusu yayınlamak için bir kural koydu, ancak Apache'ye İnternet'ten erişilemiyor

httpd.conf içindeki Listen portunun herhangi bir değeri için, Başlangıç'ta, siyah bir pencerede 30 saniye boyunca, "Normalde her soket adresinin yalnızca bir kullanımına izin verilir: make_sock: adrese bağlanamadı ... dinleme soketi yok, kapatılıyor Günlükler açılamıyor "
Adresi dinle...
80 0.0.0.0:80
8080 0.0.0.0:8080
1234 0.0.0.0:1234
127.0.0.1:80 127.0.0.1:80
Aynı zamanda bilgisayarın adres çubuğuna http://localhost / yazarken ekranda "Çalışıyor!" yazısı çıkıyor.
Lütfen bana ne yapacağımı söyleyin. (Windows7, Internet Explorer9)

"Dinle bağlantı noktasının herhangi bir değeri için" - Büyük olasılıkla 80 numaralı bağlantı noktasında asılı başka bir uygulamanız var. Onu bulun ve devre dışı bırakın / kaldırın / başka bir bağlantı noktasına taşıyın. Bunun nasıl yapılacağı makalede yazılmıştır. Alternatif olarak, Apache'yi farklı bir bağlantı noktasına taşıyın.

"Bunun yerine komut dosyası kodu görüntülenirse, PHP modülü bağlı değil" makalesine yazıyorsunuz. Her şeyi yazıldığı gibi yapmama rağmen bu tam olarak başıma gelen şey. Nedeni ne olabilir söyler misin?

Sebep aynı - PHP bağlı değil. Apache günlüklerinde ne yazdığını kontrol edin, ayrıca Apache yapılandırma dosyasına da bakın - PHP modülünü bağlamaktan sorumlu bölüm. Her şeyi makalelerde yazıldığı gibi yaparsanız, Apache + PHP + MySQL paketi ilk kez başlatılır. Makalelerin malzemesi gerçek başarılı kurulumlarla test edilmiştir.

Sorunuz bana açık değil.

httpd.conf'a eklemeniz gereken talimatlar incelikle sessiz kaldı

Bu satır isteğe bağlıdır - PHP bu yönerge olmadan çalışacaktır.

Birden çok sanal ana bilgisayar kapalı. Üç aydır bahis oynuyorum, sonra birini deneyeceğim, sonra diğerini. Tüm ayarlar burada anlatıldığı gibi yapılır. Bir localhost çalışıyor. Bir dizindeki localhost / www klasörüne "iterseniz" ve buna localhost / dizinde başvurursanız çalışır. Ve daha fazla yok (((((
Nedeni ne olabilir? Windows XP SP3, ancak ZverCD revizyonu - nedeni bu olabilir mi?
Plizz'e yardım et...

Nedeni kesinlikle Windows derlemesi değil. Talimatlardaki gibi her şeyi yaptıktan sonra, mysite.lc ve phpmyadmin.lc'ye eriştikten sonra tarayıcı nasıl bir hata veriyor?

İlk site localhost, ikinci site.ru olarak kayıtlıdır. Windows hosts dosyasında her ikisi de 127.0.0.1'de askıda kalıyor.
site.ru'ya girmeye çalıştığınızda, uzun bir süre bir ana bilgisayar arar ve ardından "Sayfa görüntülenemiyor" yazar. index.php ve index.html dosyası dizinin kökündedir ve her durumda, localhost / site.ru adresine giderseniz (basit html'nin bir kopyası vardır), her şey orada açılır. Veya Virtualhost'larda varsayılan ana bilgisayarı (localhost) yorumlarsanız, localhost yazdığınızda site.ru sitesi açılır.
Belki localhost yerine farklı bir ad kaydetmeniz gerekir?

değişiklikten sonra ana bilgisayar dosyası bilgisayarınızı yeniden başlatmayı deneyin. İlk önce site.ru'yu tarayıcıda açmaya çalışırsanız ve ancak daha sonra hosts dosyasını değiştirirseniz, site açılmayacaktır. Ardından, ping komutunu localhost ve site.ru'da cmd'de çalıştırın. site.ru ping (127.0.0.1) ise - sorun Apache ayarlarındadır. Ayrıca, test süresince tüm antivirüsleri / güvenlik duvarlarını devre dışı bırakmayı deneyin - bunlarla ilgili bir sorun olabilir. Her şey başarısız olursa, makaledeki tüm talimatları (prosedür, test sitelerinin adları vb.) tam olarak izleyerek Apache'yi yeniden yükleyin - her şey çalışmalıdır. Ve her şey işe yaradıktan sonra, yapılandırmaları kendiniz ayarlamaya başlayın.



PHPIniDir "c: / php"
hata "Yerel bilgisayarda APACHE2 hizmeti başlatılamadı. Ayrıntılar için sistem olay günlüğüne bakın. Bu hizmet Microsoft tarafından geliştirilmediyse, hizmet geliştiricisine başvurun ve hizmete özel hata kodu 1'i bildirin"
yukarıdaki satırları silerken her şey tekrar çalışır

Çok teşekkürler! Herşey çalışıyor!

Php sayfam ancak ekledikten sonra yorumlanmaya başladı
AddType uygulaması / x-httpd-php .php

"php sayfam ancak ekledikten sonra yorumlanmaya başladı
AddType uygulaması / x-httpd-php .php "
Aynı şey, internete girene kadar 10 kez yeniden başlattım ve hala bu satırı yazmam gerektiğini gördüm. Ekledim ve her şey Windows 7'de hemen çalıştı.

Windows 7 altında Apache (httpd-2.2.20-win32-x86-no_ssl) yüklendi, başlıyor, ancak Firefox başlangıç ​​sayfasını şu şekilde açmıyor: Çalışması! Ping 127.0.0.1 localhost geçişleri, NOD 32, Skype, tavsiyelerde yazan vhosts.conf dosyası için ayarlar kontrol edildi. Sorun nedir? Bana yardım et lütfen!

htpd.conf dosyasındaki "#ServerName localhost: 80" satırının yorumlanması gerektiği kesin mi? Özü yazdığım bir CreateDB.php dosyası oluşturdum: "bir veritabanı testi oluştur". daha sonra mysql konsolundan öğrendiğim gibi veritabanını oluşturdu, ancak tarayıcıda "uzak sunucu veya dosya bulunamadı" yazıyor. Aynı zamanda, phpinfo.php gibi dosyalar ve her türlü "merhaba!" yorumsuz çalıştı

Merhaba.
Sorun şudur.Apache2.2.20, PHP5.2.17 yüklendi
PHP modülü bağlı görünüyor, ancak herhangi bir deneme
http: //localhost/phpinfo.php ile iletişime geçin sonuç yok
sonuca dosya hatası/log dosyasındaki metni vereceğim
Apache / 2.2.20 (Win32) PHP / 5.2.17 yapılandırıldı - normal işlemlere devam ediliyor
Sunucu yapımı: 30 Ağustos 2011 21:54:15
Üst: Oluşturulan alt süreç 8012
Alt 8012: Alt süreç çalışıyor
Alt 8012: Başlangıç ​​muteksini aldı.
Alt 7488: Başlangıç ​​muteksini yayınladı
Alt 8012: 64 çalışan iş parçacığı başlatılıyor.
Alt 7488: Tüm çalışan iş parçacıkları çıktı.
Alt 8012: 80 numaralı bağlantı noktasında dinlemek için iş parçacığı başlatılıyor.
Ne yapacağımı bilmiyorum ama bana söyleyebilirsin.

Güzel makale, ancak php'yi modül olarak bağlarken bunun için yapılandırma eklemeniz gerektiğini de belirtmeyi unuttunuz:

satırlardan sonra"
LoadModule php5_module "c: /php5.2.17/php5apache2_2.dll"
PHPIniDir "c: /php5.2.17"
"

gibi bir şey yazman gerekiyor.

AddType metin / html .php

Değişiklik (Etiketler ovuşturdu)

"küçüktür işareti" IfModule php5_module "İşaretten büyüktür"
"küçüktür işareti" Konum / "işaretten büyüktür"
AddType metin / html .php
AddHandler uygulaması / x-httpd-php .php
"küçüktür işareti" / Konum "işaretinden büyüktür"
"küçüktür işareti" / IfModule "İşaretten büyüktür"

Apache makinesinde (httpd-2.0.64-win32-x86-no_ssl.msi) çalışıyor. PHP - php-5.2.17-Win32-VC6-x86.zip'i kurduktan sonra her şey çalışıyor. Ancak httpd.conf'a yapıştırdıktan sonra:
LoadModule php5_module "c: /php/php5apache2_2.dll"
PHPIniDir "c: / php"

Hata, "php5apache2_2.dll hizmeti başlatılamadı.
ve buna göre, Apache başlamıyor nedeni ne olabilir ????
Not: Cevabı burada bulamadım!

Alex'e
Kusura bakmayın geç oldu ama belki birileri işine yarar. LoadModule yönergesinin parametresinde Apache'nin sürümüne karşılık gelen dll'yi belirtmeniz gerekir. Onlar. senin durumunda php5apache2.dll olmalı

gastroguru 2017