Bir web sunucusunu herhangi bir klasörde kolayca başlatmak nasıl?


115

Belirlediğim herhangi bir klasörde (veya daha iyisi, başlattığım yerde) belge kökü olan bir web sunucusunu başlatmak için nispeten ağrısız bir yol arıyorum.

JS çerçeveler gibi yeni şeyleri sık sık burada bir yerde yeni bir klasörde denerim:

/home/alexander/code/angularjs/

O zaman bu dizine girip şöyle bir şey yazmanız uygun olacaktır:

start-webserver-here 

böylece bir web sunucusu 80 numaralı bağlantı noktasını dinlemeye ve bu dizine hizmet vermeye başlar ve üzerinde çalıştığım şeyi deneyebilirim.

XAMPP'yi yükledim, ancak her klasör için izinler vermenin yanı sıra değiştirmek zorunda kalacağım bir belge kökünün, hatta kök ayrıcalıklarının olduğu temel apache görünüyor.

Daha kolay bir yolu var mı?


Birisi bunu başarmak için büyük bir gömlek listesi hazırladı: gist.github.com/willurd/5720255
Abhinav Bhatia

Yanıtlar:


174

kullanım

python2 -m SimpleHTTPServer 80

veya

python3 -m http.server 80

Basit bir HTTP sunucusu başlatmak için.

80Farklı bir bağlantı noktasında dinlemek istiyorsanız başka bir numara ile değiştirin . <1024 numaralı bağlantı noktaları için kök ayrıcalıklarıyla çalışması gerekir.


1
Bu tam olarak aradığım şeydi! Danke!
Alexander Rechsteiner,

1
Bunu Apache'ye paralel olarak çalıştırabilir misin? Elbette farklı bir limanda (aynı limanı kullanabileceklerini söyleyerek aklımı başınızdan almanızı rica ediyorum).
15:13

3
@dibs Evet, ikisi de paralel olarak çalışabilir. Ama hayır, aynı limanda değil.
Dan

11
Bunun python 3.x eşdeğeripython3 -m http.server
Stefano Palazzo

1
İşte bu yüzden stackoverflow'u çok seviyorum. Buraya tam bir problem için bakıyorum, bir ruh bulmak istedim ... bir webserver'dan angularjs çalıştırın. Çok teşekkürler Florian Deisch
SK176H

24

Ayrıca PHP'yi bu amaçla kullanmayı seviyorum, çünkü WordPress gibi şeyleri anında çalıştırmamı ve temaları daha kolay geliştirmemi sağlıyor (yine de MySQL'e ihtiyacınız var):

php -S 0.0.0.0:8000

Bunu başlatan aynı betiğin içinde, aynı zamanda tarayıcıyı dosya değişiminde otomatik olarak yenileyen koruma da başlatıyorum .



Evet, daha yeni bir versiyona ihtiyacınız var. Eğer yaparsanız, 13.10 depolarındaki sürüm sudo apt-get install php55.5.3'tür, bu yüzden iyi olmalısınız.
metakermit

Mükemmel ! Tam da aradığım şey !
Prakash Raman

17

daha yakut fikirli iseniz, servis mücevher harika

serve

veya i farklı port için:

serve 9000

ile yüklemek gem install serve


Bu iyi çalışıyor, ama yakut gerektiriyor> = 1.9.3
Valerio Schiavoni

Evet, aynı zamanda 1.9.3 eol'dir . Güvenlik yamaları artık desteklenmiyor. Eski yakutları yönetmek için rvm tavsiye ederim . Onlar sisteminizin varsayılanı olmamalı
olacak-


6

Sadece kullan http-server, sıfır konfigürasyonlu bir komut satırı sunucusu.

Yüklemenin en kolay yolu npm'dir:

sudo npm install http-server -g

Kullanımı:

http-server [path] [options]

[path]./publicKlasör varsa ve varsayılan olarak ./.

Sunucunuzu çalışırken görmek için http: // localhost: 8080 adresini ziyaret edin . -pFarklı bir port ayarlamak için seçeneği kullanın .

Daha fazla seçenek için: https://www.npmjs.com/package/http-server adresini ziyaret edin .


Bunu kullanmamak için tek neden, doğal olarak kurulmamış olan rpm'yi gerektirmesidir. Ruby ve python'dan bahseden diğer çözümler hemen hemen tüm işletim sistemlerine önceden yüklenmiştir, bu nedenle sunucuyu çalıştırmak için komutu yüklemekle ilgili bir önkoşul bulunmamaktadır.
jamescampbell

3

Klasörünüzün isminde açısaljs olduğundan, açısal bir js uygulaması gibi görünüyor. Böyle bir durumda, kontrol etmeyi unutmayın yeoman dışarı.

Bu siteyi alıntı yapmak

Yeoman 1.0, sadece bir araçtan daha fazlasıdır. Bu bir iş akışı; Web için geliştirmeyi daha da iyi hale getirmek için uyum içinde çalışan araçlar ve en iyi uygulamalar topluluğu.

Diğer birçok şeyden biri, birlikte verilen gruntsunucudur.


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.