| Zobacz poprzedni temat :: Zobacz następny temat |
| Autor |
Wiadomość |
Furry
Dołączył: 05 Lut 2008 Posty: 765
|
Wysłany: Pon Lis 21, 2011 10:18 pm Temat postu: Serwis bez podawania portu przy adresie hosta |
|
|
Witam, mam następujące pytanie: kiedy uruchamiam aplikację symulującą serwis internetowy opartą na czymś takim jak django/wicket/itp i podaję jakiś port to połączenie do strony to host:port/itd... W jaki sposób można zrobić by nie trzeba było wpisywać tego portu? Powiedzmy, że system na którym serwis stoi to linux (Ubuntu/Debian/...). Myślałem, że może te serwisy uruchamiane są na porcie 80 albo coś w tym guście ale pewnie jest na to jakiś inny sposób. Tylko jaki? _________________ Win (XP/Vista/7) | Linux Ubuntu |
|
| Powrót do góry |
|
 |
|
|
Hashedone
Dołączył: 23 Sie 2008 Posty: 853
|
Wysłany: Pon Lis 21, 2011 10:47 pm Temat postu: |
|
|
Nie rozumiem pytania (może dla mnie już za późno?:P). Jeśli chodzi Ci o to, że nie chcesz pisać localhost:8000 tylko localhost do testowania aplikacji, to po prostu uruchom je na 80 porcie - jest to domyślny port dla połączeń http. Czyli jak piszesz http://website.com, to przeglądarka interpretuje to jako website.com:80. Podobnie dla https domyślnie obierany jest port 443, a dla ftp bodajże 20/21. Nie ma tu magii. Można ew. kobinować z .htacces, albo generalnie konfiguracją serwera, albo po prostu przekierować porty - ale wszystko sprowadza się do przeniesiania ruchu z portu 80 do tego, na którym stoi aplikacja. _________________ PWr, WPPT, Informatyka "Two or more? - use a for", Dijkstra |
|
| Powrót do góry |
|
 |
Taeril
Dołączył: 20 Cze 2005 Posty: 1163
|
Wysłany: Wto Lis 22, 2011 8:42 am Temat postu: |
|
|
Pod Linuksem aby uruchomić coś na niskich portach (do 1024 czyli 80 także) potrzeba praw roota. Zwykłe serwery http jak nginx czy apache potrafią zmniejszać swoje uprawnienia (uruchamiają się jako root a potem działają jako zwykły użytkownik) a taki serwer np z django to nie wiem jak działa. A webaplikacja na prawach roota to nie najlepszy pomysł. Ja bym na porcie 80 postawił nginx i skonfigurował jako reverse proxy dla webaplikacji na dowolnym wysokim porcie. _________________ T.
"Some people, when confronted with a problem, think 'I know, I'll use regular expressions.' Now they have two problems." - Jamie Zawinski |
|
| Powrót do góry |
|
 |
Hashedone
Dołączył: 23 Sie 2008 Posty: 853
|
Wysłany: Wto Lis 22, 2011 10:18 am Temat postu: |
|
|
AFAIK Django działa pod tym względem podobnie do Apache. _________________ PWr, WPPT, Informatyka "Two or more? - use a for", Dijkstra |
|
| Powrót do góry |
|
 |
Taeril
Dołączył: 20 Cze 2005 Posty: 1163
|
Wysłany: Wto Lis 22, 2011 10:29 am Temat postu: |
|
|
Tak też podejrzewam ale reverse proxy ma dodatkowo taką zaletę, że można postawić kilka webaplikacji pod vhostami i nie ma problemu, że obie mają być na porcie 80, bo żadna nie jest. _________________ T.
"Some people, when confronted with a problem, think 'I know, I'll use regular expressions.' Now they have two problems." - Jamie Zawinski |
|
| Powrót do góry |
|
 |
Furry
Dołączył: 05 Lut 2008 Posty: 765
|
Wysłany: Wto Lis 22, 2011 6:51 pm Temat postu: |
|
|
Do celów testowych localhost:port jestem w stanie przeżyć, interesuje mnie jak już jest to w praktyce jak się wystawia serwis na zewnątrz. Na pewno jak wykupię jakiś hosting to nie będę miał praw do roota i raczej nie postawie serwisu na porcie 80. Więc jak to zrobić żeby nie trzeba było portu podawać? A może już hostingi mają zrobione jakies przekierowania na dane porty? W jaki sposób się to dzieje? _________________ Win (XP/Vista/7) | Linux Ubuntu |
|
| Powrót do góry |
|
 |
Hashedone
Dołączył: 23 Sie 2008 Posty: 853
|
Wysłany: Wto Lis 22, 2011 7:11 pm Temat postu: |
|
|
Jeśli kupisz hosting, to będzie tam już musiał być odpowiedni serwer uruchomiony - nie będziesz się musiał martwić. _________________ PWr, WPPT, Informatyka "Two or more? - use a for", Dijkstra |
|
| Powrót do góry |
|
 |
Furry
Dołączył: 05 Lut 2008 Posty: 765
|
Wysłany: Wto Lis 22, 2011 7:36 pm Temat postu: |
|
|
Dzięki za info:) Ale jak to w praktyce wygląda, mamy sobie serwis, i odpalamy aplikację na porcie 8080. No i co dalej tacy administratorzy hostingów robią, że działa to tak jakby było na porcie 80 ? Zwykłe przekierowanie czy jak? _________________ Win (XP/Vista/7) | Linux Ubuntu |
|
| Powrót do góry |
|
 |
Hashedone
Dołączył: 23 Sie 2008 Posty: 853
|
Wysłany: Wto Lis 22, 2011 8:10 pm Temat postu: |
|
|
Zwykłe przekierowanie, tak jak to opisał Taeril. _________________ PWr, WPPT, Informatyka "Two or more? - use a for", Dijkstra |
|
| Powrót do góry |
|
 |
Taeril
Dołączył: 20 Cze 2005 Posty: 1163
|
Wysłany: Wto Lis 22, 2011 10:57 pm Temat postu: |
|
|
Są różne hostingi. Są także różne sposoby dostarczania swojego dzieła online - nie wiem czy to ma jakąś polską nazwę ale angielskim słowem kluczowym będzie deployment ew. samo deploy. Jednym ze sposobów jest użycie FastCGI i bywa, że to jest w zasadzie jedyna opcja jak hosting ogranicza. Jeśli można mieć swój serwer http na jakimś innym (najpewniej wysokim) porcie, to można go schować za wspomnianym reverse proxy. Jest też na przykład WSGI dla pythona czy PSGI dla perla co daje kolejny sposób jeśli używa się odpowiedniego języka i oczywiście hosting daje taką możliwość.
Wyławiając kilka podanych słów kluczowych możesz poczytać sporo informacji głównie przeznaczonych dla administratora, który będzie grzebał w konfiguracji serwera. Ale warto rzucić chociaż okiem na to. Hosting hostingowi nierówny i szukając miejsca w sieci dla swojego dzieła niestety będziesz musiał się troszkę wysilić. Różnorodność jest bardzo duża od prostego konta gdzie nie da się postawić danej webaplikacji po serwer, z którym możesz zrobić wszystko (o ile masz na niego kasę). _________________ T.
"Some people, when confronted with a problem, think 'I know, I'll use regular expressions.' Now they have two problems." - Jamie Zawinski |
|
| Powrót do góry |
|
 |
|