Yerel kalkınma / test için Apache kurmak?

8 Cevap php

Ben dahili web sunucusu ve geliştirme ve test yerel makinede oluşması için veritabanı göstermek Raylar için Screencasts tarafından etkilendim oldum. Nasıl onun DocumentRoot olarak bir proje dizin yürütmek, ve belki port 8080 (veya benzeri bir şey) üzerinde dosyaları sunmak için Apache bir örneği alabilirim?

Ben CodeIgniter'ı denemek için gidiyorum ve ben birden çok proje için kullanmak istiyorum çünkü ben soruyorum nedenidir. Daha doğrusu her biri ile benim makinenin DocumentRoot yığılmayı olmaz. Veritabanı geçişleri yapmak konusunda öneriler de açığız.


Şimdiye kadar yanıtları için teşekkür ederiz. Ben WAMP yalnızca Windows gibi görünüyor, Mac OS X üzerinde olduğumu açıklamak gerekir. Ayrıca, XAMPP Apache ve diğer birçok web araçları yüklemek için harika bir yol gibi görünüyor, ama ben bir proje dizin kadar hizmet bir örneğini kadar yükleme bir yol göremiyorum. Mac OS X, Apache ve PHP hem de yüklü olan - Ben sadece standart olmayan bir port üzerinde bir proje kadar hizmet almak için bir yol arıyorum.

Ben sadece ne istediğiniz MAMP Pro, hangi bulundu, ama eğer mümkünse daha minimalist bir yaklaşım daha iyi olurdu. Herkes düzenlenmiş ve proje dizininde içine düştü edilebilir bir httpd.conf dosyası var mı?

Ayrıca, ben sadece veritabanı göç söz attığım için üzgünüm. Ne bulmayı umuyorum varolan verileri kaybetmeden canlı bir sunucu üzerine şema değişiklikleri itmek beni sağlayacak şeydir. Ben bu zor ve çevresel faktörlere bağımlı olduğunu sanıyorum.

8 Cevap

Mac Apache Web Server ve PHP bir yapı hem de gelir. Bu platform iyi web geliştiricileri tarafından sevilen büyük nedenlerinden biri.

Kod Igniter kullanıyorsanız bu yana, PHP'nin varsayılan sürüm 10.5 ile sevk olduğu PHP 5, isteyeceksiniz. Eğer entropy.ch üzerinde hop ve sağlanan PHP5 paketini yüklemek OS bir önceki sürümü üzerinde iseniz.

Sonra, üzerinde Apache açmak isteyeceksiniz. Paylaşım tercihleri ​​panelinde, kişisel web paylaşımı açın. Bu, yerel makinede apache başlayacaktır.

Sonra, siteler için kullanmak için kurulum için bazı sahte geliştirme URL'leri isteyeceksiniz. Ben sahte TLD bunun için. Dev (örn. stackoverflow.dev) kullanın. / Etc / hosts dosyasını düzenleyin ve aşağıdaki satırları ekleyin

127.0.0.1    www.example.dev
127.0.0.1    example.dev

Bu, yerel makinede yukarıda URL'leri işaret. Son adım apache yapılandırıyor. Özellikle, PHP sağlayan ve bir kaç sanal konakları kurma, sanal hosting adlı olanak tanınmasını. PHP sağlayan, entropi PHP paketini kullandıysanız zaten yapılacaktır. Değilse açıklandığı gibi, sizin http.conf dosyasını düzenlemeniz gerekir here. Temelde, PHP modülü yükleyecektir satırları uncommenting ediyoruz.

Eğer apache config bir değişiklik yaptığınızda, değişikliklerin etkili olması için Apache'yi yeniden başlatmanız gerekir. Bir terminal penceresinde, aşağıdaki komutu yazın

sudo apachectl graceful

Bu incelikle apache yeniden başlayacaktır. Eğer yapılandırma dosyası apache bir sözdizimi hatası yaptıysanız yeniden olmayacaktır. Siz config sorunları vurgulamak

sudo apachectl configtest

Yani, PHP destekli ile, NamedVirtualHosts açmak isteyeceksiniz. Bu apache birden fazla URL yanıt izin verir. Http.conf dosyasında aşağıdaki (veya benzeri) hattı arayın ve yorumsuz.

#NameVirtualHost *

Son olarak, bu yeni sanal konaklar için dosyalar için bakmak gerekir apache söylemek gerekir. Sen http.conf dosyasına aşağıdaki ekleyerek yapabilirsiniz. NOT: Ben bu ayrı bir dosya içine böyle yapılandırma kurallarını kırmak ve değişiklikleri dahil etmek include direktifini kullanmak iyi bir iyi uygulama bulmak. Bu değişiklikleri bozulmadan gelen herhangi bir otomatik güncelleştirmeler duracaktır.

<VirtualHost *>
    DocumentRoot /Users/username/Sites/example.dev
    ServerName example.dev
    ServerAlias www.example.dev    
</VirtualHost>

Sen DocumentRoot olarak herhangi bir klasörü belirtebilirsiniz, ama zaten dosyaları dahil etmek için doğru izinlere sahip yapılandırılmış gibi ben o rahat, kişisel Siteleri klasörünü kullanmak bulabilirsiniz.

Kyle Üzgünüm, Yorumlarınız için doğrudan yanıt yeterli popülaritemi yok. Ama her proje farklı bir port üzerinden hizmet yapmak istiyorsanız, 80 yerine haricinde tam Kelly yukarıdaki (eksi dns şeyler) gibi sanal konak yapılandırması kurmayı deneyiniz, ettik varsayarak, kendi port numarası virtualhost her verin Lütfen ports.conf dosyasına bu portu eklendi.

NameVirtualHost *

<virtualhost *:80>
DocumentRoot /site1/documentroot
</virtualhost>

<virtualhost *:81>
DocumentRoot /site2/documentroot
</virtualhost>

<virtualhost *:82>
DocumentRoot /site3/documentroot
</virtualhost>

<virtualhost *:83>
DocumentRoot /site4/documentroot
</virtualhost>

Umut olur :/

Ben de her yeni ikililer indirebilir ve bunları el ile kurmak. Ben bu sürece Apache yapılandırma hakkında biraz bildiğimiz gibi, ağrısız bir süreç olarak buldum.

Benim geliştirme makinede, ben name-based virtual hosting ile apache kurulum var. Ben de benim yerel makineye benim geliştirme alanı eşleştiren bir dyndns.org hesabım var. DynDNS bir joker etki sağlar, ve ben istediğim gibi nedenle isme dayalı sanal konakları kullanarak kolayca gibi pek çok kalkınma alanları için (ayrı belge kökleri ile) gibi birçok site oluşturabilir, tüm bir Apache örneğini dışı çalışan.

örneğin Sanal konaklar için apache yapılandırma gibi bir şey olabilir

NameVirtualHost *:80

<virtualhost *:80>
ServerName site1.mydyndns.dyndns.org
DocumentRoot /site1/documentroot
</virtualhost>

<virtualhost *:80>
ServerName site2.mydyndns.dyndns.org
DocumentRoot /site2/documentroot
</virtualhost>

Bu bana kolayca benim yerel makinede birçok geliştirme sitelerini korumak için hızlı ve kolay yolu olmuştur.

Ben mantıklı umuyoruz.

Cheers, Kelly.


Ben Macos kullanmayın, ama ben Apache kullanırım. (Onun genellikle at / etc/apache2/apache2.conf linux) benim apache yapılandırma dosyasında, ports.conf adında bir dosyaya bir referans arayın. Bu dosyayı bulun ve satırı ekleyin

8080 Dinle

Sonra Apache sürecini yeniden başlatın. Bundan sonra iş olmalıdır. Bu bir mac üzerinde işe yaramazsa ben şimdiden özür dilerim :)

Sen ayrı bir örnek gibi XAMPP gibi düşük bir ön kurulum paketi kullanmak ve çalıştırmak olabilir. Diğer birçok benzer projeler de vardır.

PHP için böyle WAMP ve XAMPP olarak Apache + MySQL + PHP, dağıtmak için çeşitli yüksek kaliteli paketleri var. Şahsen, ben her yeni ikililer indirebilir ve daha ince taneli kontrolü için elle yükleyin. Çevrimiçi öğreticiler bol bunun üstesinden nasıl vardır.

Komut satırında veya PHPMyAdmin gibi bir arayüz yoluyla, sunucu üzerinde veritabanı dökümü ve hiçbir deneyimi varsa (PHPMyAdmin önerilir geri benzer şekillerde dışa - Veritabanı göçler anlaşılır olmalıdır mysql komut satırı).

Sen MAMP yanlısı kullanabilirsiniz ancak ücretsiz sürümü de çok iyi bir seçimdir. Bunu buradan alın: http://www.mamp.info/en/mamp.html

Ben deneme istediğiniz her geliştirme ortamı için ayrı bir lamba sanal bir cihaz kullanarak tavsiye edebilir. VMware Server veya VirtualBox bunları çalıştırın.