Ip 를 넣고하면 되는데 localhost 에서는 안되요

질문1

http://192.168.23.128/

이런식으로 아이피를 넣으면 아파치 접속이 되는데

localhost 로 들어가면 안들어가지네요…

질문2

apache2 -k restart 로 제시작을 하려했더니

Address already in use : make_sock : could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
unable to open logs

라고 나와서 해당 주소를 쓰는애를 죽이려고

netstat -nlp 를 했는데…

목록이 너무많이나와서 위에 뭐가나왔는지 확인이 안되요…

터미널에서 위로 올리는법이나 그런건없나요…

[quote:2yuikj96]Address already in use : make_sock : could not bind to address 0.0.0.0:80[/quote:2yuikj96]

해석부터 하십시오. 이미 address 0.0.0.0:80, 즉 80번 포트를 사용하고 있는 상태입니다.
또는 httpd.conf 의 설정을 바꾸시기 바랍니다. ip를 0.0.~~을 쓰시는 이유는 무언가요?

localhost가 안되는 이유는 여러가지 있겠지만
/etc/hosts 에 [u:2yuikj96]127.0.0.1 localhost[/u:2yuikj96] 가 있는지 부터 확인 하십시오.

sudo netstat -ltnp | grep ‘:80’

설정 부터 공부하십시오.

[quote:2aqki3t0]
또는 httpd.conf 의 설정을 바꾸시기 바랍니다. ip를 0.0.~~을 쓰시는 이유는 무언가요?
[/quote:2aqki3t0]

hosts 에 다음과같이 정의해주었습니다…

127.0.0.1 localhost
127.0.1.1 ubuntu

apache2 를 0.0.~ 말고 127.0.0.1 로 하고싶은데… 어디에 설정할수가 있나요…

처음하는데 역시 리눅스는 손이 정말 많이가는거같네요…

답변감사합니다… 메리크리스마스 되세요…!

아마도 /etc/apache2/httpd.conf 에 위치하고 있을 것 입니다.

굳이 아이피를 넣지 않아도 ServerName을 localhost:80 으로 설정하시면
아이피와 localhost 둘다 접속 가능 합니다.

안된다면 어딘가 설정이 잘못 되었겠죠!

ServerName localhost
ServerName 127.0.0.1
ServerName localhost:80
ServerName 127.0.0.1:80

검색을 통해 이미
위방법으로 다해봤는데도 안되더라구요…

그래도 답변남겨주셔서 감사합니다…

그냥 순수 우분투에 apache만 깔았는데도 이러니 갑갑하네요…
설정을 좀더 찾아봐야겠네요… :(

웁스! 안될리가 없는데…!!

설마 주석이 있거나 설정을 바꾸시고 아파치 재시작은 해주셨겠죠!
설~~마 아파치가 여러개 떠 있는 것 아닌가요?

보다 자세한 사항을 체크하시려면 에러 로그 내용을 보여 주십시오.

아파치 설정은 안해봤지만 다른 네트웍 어플리케이션 띄워 봤던 경험에 비춰,

[list:3ihjtduq][:3ihjtduq]아파치 기본 설정으로 동작시 정확히 어느 주소 어느 포트에 바인딩 되는지[/:m:3ihjtduq]
[:3ihjtduq]localhost나 127.0.0.1로 접속이 안된다면 명시적으로 해당 주소를 바인딩 했는지[/:m:3ihjtduq]
[:3ihjtduq]바인딩을 원하는 주소와 포트에 권한이 있는지[/:m:3ihjtduq][/list:u:3ihjtduq]

이렇게 차근히 점검해 보시죠. 제 예전 기억으로는 아파치 기본 설정이 127.0.0.1:80에만 바인딩 되는 것으로 기억 납니다. 그리고 80 포트 같은 경우는 sudo를 사용해 루트 권한으로 작업 해야 합니다.

[code:3ihjtduq]sudo /etc/init.d/apache2 restart[/code:3ihjtduq]

터미널 출력을 올려 보시려면 쉬프트 + 페이지업 하시면 됩니다. 터미널 설정에서 출력 저장 크기도 지정 되구요.

https://help.ubuntu.com/13.10/serverguide/httpd.html

ㅋㅋㅋ 겁나 복잡하네요. 아파치 꼭 안써도 되면 좀 쉬운 놈으로 찾아 쓰세요.

이부분 로그들을 올리는게맞는지요…

로그도 진작에 봐봤는데 페이지 자체를 찾을수없다고 나오니

딱히 눈에띄는 에러가 올라오질 않습니다…

아래에 접속되는 로그는 아이피를 통해 접속한 기록입니다…

/var/log/apache2/error.log
[Wed Dec 25 21:36:42 2013] [notice] caught SIGTERM, shutting down
[Wed Dec 25 21:36:43 2013] [notice] Apache/2.2.22 (Ubuntu) PHP/5.3.10-1ubuntu3.9 with Suhosin-Patch configured – resuming normal operations
[Wed Dec 25 21:44:20 2013] [notice] Apache/2.2.22 (Ubuntu) PHP/5.3.10-1ubuntu3.9 with Suhosin-Patch configured – resuming normal operations

/var/log/apache2/access.log
192.168.23.1 - - [25/Dec/2013:21:36:48 +0900] "GET / HTTP/1.1" 304 208 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36"
192.168.23.1 - - [25/Dec/2013:21:44:37 +0900] "GET / HTTP/1.1" 304 208 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36"

sudo netstat -tap 을 통해 실행중인 것들을 확인해보았을때,

아래처럼 나오는걸로봐서는 제대로 되는거같진 않네요…아직도…

tcp 0 0 localhost:mysql : LISTEN 908/mysqld
tcp 0 0 *:netbios-ssn : LISTEN 678/smbd
tcp 0 0 *:http : LISTEN 1295/apache2
tcp 0 0 :ftp : LISTEN 789/vsftpd
tcp 0 0 :ssh : LISTEN 726/sshd
tcp 0 0 localhost:postgresql : LISTEN 977/postgres
tcp 0 0 :microsoft-ds : LISTEN 678/smbd
tcp 0 64 192.168.23.128:ssh 192.168.23.1:18531 ESTABLISHED 1562/0
tcp 0 0 192.168.23.128:ftp 192.168.23.1:18522 ESTABLISHED 1558/vsftpd
tcp6 0 0 localhost:8005 [::]:
LISTEN 1339/java
tcp6 0 0 [::]:http-alt [::]:
LISTEN 1339/java
tcp6 0 0 [::]:ssh [::]:
LISTEN 726/sshd

모든 설정파일 말씀하신대로, 검색에 나오는대로 수정하고, 다시 vi로 열어서 확인도해보았습니다…

User와 Group bad name인것도 수정해주었습니다…

루트권한에서 sudo 명령어를 통해 restart 계속시도하고있습니다…

터미널은 putty를 이용해ssh로 접속하니 쉽게 되네요 :)

일러주신 아래방법 한번 찾아보겠습니다… 감사합니다…

[quote="마잇":2o47j9kg]

[list:2o47j9kg][:2o47j9kg]아파치 기본 설정으로 동작시 정확히 어느 주소 어느 포트에 바인딩 되는지[/:m:2o47j9kg]
[:2o47j9kg]localhost나 127.0.0.1로 접속이 안된다면 명시적으로 해당 주소를 바인딩 했는지[/:m:2o47j9kg]
[:2o47j9kg]바인딩을 원하는 주소와 포트에 권한이 있는지[/:m:2o47j9kg][/list:u:2o47j9kg]
[/quote:2o47j9kg]

별다른 문제는 없어 보이는 데 재시작을 안 해 주신 것 같습니다.

혹여나 터미널 이용시 sudo 명령어를 붙이지 않으시면 비슷한 메세지가 출력되지만
Permission denied 메시지도 함께 출력 되는 데 이것이 없는 것으로 보아
root 권한으로 실행 하신 것 같습니다.(맞나요?)

그렇다면 이전 데몬이 죽지 않는 것 같은데 데몬이 2개 이상 떠있는 것으로 예상 되어 집니다.
또는 80번 포트를 점유하고 있는 다른 프로세서가 있을 수 있습니다.

먼저 80번 포트를 체크해 보시고 강제로 데몬을 죽여 놓고 시작하는 것이 좋을 것 같습니다.

sudo netstat -ltnp | grep ‘:80’

tcp6 0 0 :::80 :::* LISTEN 1872/httpd

위의 메세지를 확인하시고 kill 명령어를 이용하십시오.

sudo kill -9 1872

그리고 아파치를 재시작 합니다.

sudo /etc/init.d/apache2 restart

  • Stopping apache2 … [ ok ]
  • Starting apache2 …
    (98)Address already in use: make_sock: could not bind to address [::]:80
    (98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
    no listening sockets available, shutting down
    Unable to open logs [ ok ]

만약 중복해서 데몬이 떠 있다면 위와 같은 현상이 계속 발생합니다.
그렇다면 같은 명령어를 되풀이 해 보십시오.(떠 있는 수만큼 죽이셔야 합니다.)

sudo netstat -ltnp | grep ‘:80’

tcp 0 0 :::80 :::* LISTEN 4019/httpd

sudo kill -9 4019

위와 같이 다른 pid로 데몬이 떠 있을 수 있습니다. 그렇다면 kill 명령어로 다시 해당 pid를 죽이십시오.
만약 아무런 데몬이 떠 있지 않다면 아래 명령어로 아파치를 시작해 보십시오.

sudo /etc/init.d/apache2 start

  • WARNING: apache2 has already been started.

위와 같은 메세지 출력된다면 아래와 같이 정상적으로 수정 할 수 있습니다.

sudo /etc/init.d/apache2 zap

  • Manually resetting apache2 to stopped state.

sudo /etc/init.d/apache2 start

  • Starting apache2 … [ ok ]

급하게 글을 쓰는라 의미 전달이 잘 될지…^^

계속 제실행되길래 자동으로 그런건줄알고

파일을 수정할때마다 restart 하거나 아에 vmware를 재시작해주었습니다…

말씀하신대로 프로세스가 완전히 죽을때까지 kill 했다가 제시작해주었지만…

여전히 127.0.0.1 에서 접속이안되네요…ㅠㅠ

zap 라는 명령어는 없는거같구요…

root@ubuntu:/etc/apache2# sudo /etc/init.d/apache2 zap

  • Usage: /etc/init.d/apache2 {start|stop|graceful-stop|restart|reload|force-reload|start-htcacheclean|stop-htcacheclean|status}

다음과같이만 사용이가능하다고 나오네요…

신경써주셔서 감사합니다…

의미 전달이 잘 안되는 군요!

중복된 프로세서가 존재한다는 것 인지
재시작시 정상 메세지가 출력되었다는 것 인지 의미 전달이 안되는 것 같습니다.

중복 현상을 해결 하셨다면 httpd.conf 설정 후 재시작하셧다면
hosts 파일을 수정하셨으므로 접속이 되지 않을 리가 없을텐데요!~

zap 명령어는 옛날 버전을 사용하고 있다는 전제로 말씀 드린 것인데
요즘은 -t 옵션을 사용하는 군요!

[quote:2z9e1tb5]-t : run syntax check for config files[/quote:2z9e1tb5]

차분히 처음 부터 점검해 보십시오.

추가사항

설정 파일 /etc/apache2/ports.conf 을 확인해 보십시오.
Listen 0.0.0.0:80

위와 간은 설정이 있다면 80으로 변경하십시오. 0.0.0.0:80으로 되어 있다면 접속이 안됩니다.

[quote="bahzu":1c30yicg]
중복 현상을 해결 하셨다면 httpd.conf 설정 후 재시작하셧다면
hosts 파일을 수정하셨으므로 접속이 되지 않을 리가 없을텐데요!~
[/quote:1c30yicg]

말씀감사합니다…

어차피 파일은 수정된 상태인데, 아에 껏다가 다시 키는것과 프로세스를 전부죽이고 하는것과 차이가없을거같은데요… 아닌가요

어차피 수정된 파일이 접속되는건 여전히 같으니까요…?

다시 제검토하던중

root@ubuntu:/etc/apache2# sudo apache2 -k start
(2)No such file or directory: apache2: could not open error log file /etc/apache2/${APACHE_LOG_DIR}/error.log.

이런오류가 갑자기 튀어나오네요…

찾아보니 service apache2 start 로 실행시키라는데…

두개의차이점이 있나요…?

천천히 다시봐봐야겠습니다… 늦은시간까지 감사합니다 ㅠㅠ 정말 크리스마스에 선물이신거같네요…

아닙니다. 아파치 2.2 버전에서는 stack over flow 버그가 있어 2개 이상 띄어져 있으면
강제로 죽이지 않는 한 재부팅 하더라도 띄어진 수 만큼 실행 됩니다.

또한 추측으로는 virtual host, Listen등 여러 부분을 수정하신 것 같은 데
/etc/apache2/ports.conf 파일의 Listen 부분을 80과 8080등으로 동시 사용 하시면
데몬은 하나더라도 프로세서는 2개가 띄워진 효과가 있습니다.

강제로 죽일 때는 이 2개를 다 죽여야 합니다.

[quote:dh7izeir]찾아보니 service apache2 start 로 실행시키라는데…[/quote:dh7izeir]
뭐라 설명해야 할지…^^ service란 일종의 데몬 관리 프로그램으로 생각하시면 됩니다.
부팅시 자동으로 실행되어야 하는 경우 서비스 목록에 추가하시면 위와 같은 간단한 명령어로 시작과 종료를 할 수 있습니다.

지금은 chkconfig와 systemctl등으로 변화 되어 사용하고
최신 버전의 우분투에서는 더 이상 사용하지 않는 명령어 입니다.

[quote:gqd2r416]찾아보니 service apache2 start 로 실행시키라는데…[/quote:gqd2r416]

init.d/apache2 -k start

그럼 여기서 나타나는 오류들은 제대로 다 잡아줘야할것만같아보이네요…

root 권한으로 실행하는것도 문제가 되는건가요…?

다죽이고 다시 실행시켜보았는데,

여전히 프로세스가 죽여도 5번정도 살아나네요.

보고또봐도 어딘지모르겠네요…하

음…! 더 이상 뭐라 드릴 말씀이 없습니다.

저라면 다 날리고 컴파일 버전으로 다시 설치 하겠습니다.
패키지 버전은 10여년 전에 손을 대보고 현재까지 다룬 적이 없어서 제 눈으로 직접 보지 않는 한
딱 집어 말씀 드리기가 뭐하네요…! 이점 사과 드립니다.

힘내십시오.

[quote="bahzu":1ka4tn5k]힘내십시오.[/quote:1ka4tn5k]

늦은시간까지 정말감사합니다…

왜 이렇게 리눅스를 어렵게 해놨는지 ㅠ.ㅠ…

다시한번감사합니다. 안녕히주무세요 :P

/etc/apache2/site-enabled/000-default 파일을 열어서

<VirtualHost *:80>
ServerName localhost,127.0.0.1

이렇게 시작되는지 살펴보세요.

[quote="kdh6429":3dyfu9k8]
root@ubuntu:/etc/apache2# sudo apache2 -k start
[/quote:3dyfu9k8]

이렇게 하시면 /usr/bin/에 있는 apache2 실행 파일이 작동 됩니다.

항상 /etc/init.d/apach2라고 전부 써 주셔야 합니다.

service apache2 restart 하셔도 맞습니다.

제 생각에는 기본적인 설명을 안 보시고 그냥 아시는 대로 이렇게 저렇게 막 해보시는 것 같은데 그렇게 해서 잘 될 것 같진 않습니다. 차근히 하세요.

정 안되면 그냥 윈도우즈에 설치해서 쓰셔도 되구요.