블로그 이미지
pgmr이상현
Instagram:sh_lee77 머신비전, YOLO, 영상처리, Deep Learning, 딥러닝

calendar

1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

Notice

앞 포스팅에서 좌표를 서버로 보내는 것 까지는 성공을 하였습니다.

하지만 저희가 겪은 문제점으로는 Apache서버를 시작하고 서버인 localhost로 이동을하게되면, 서버에 올린 좌표값이들어있는 html파일의 목록이 보이게됩니다.

아래 이미지를 보겠습니다.

앞 포스팅에서 Bounding Box의 정중앙 좌표값을 서버로 받아오는데 성공을 했다고 했습니다. 좌표가 제대로 전달이 되었는데 무엇이 문제냐고 하실 수 있습니다.


위에 이미지의 주소를 보게되면 192.168.123.101에서 끝이아닌 뒤에 /position.html 경로가 더 있는 것을 알 수 있습니다. 경로가 더 있다는 것은 localhost에서 파일목록에있는 position.html을 열었다는 것 입니다.


이게 왜 문제가 되었냐면, Arduino에서 서버를 통해서 좌표값을 가져와야 하는데

Arduino에서 서버에 접속을 해서 파일목록에 있는 position.html을 직접적으로 열고가져올 수 있는 방법이 없기 때문에 문제가 되었습니다. 어떻게 가공을 통해서 Arduino에 바로 넘겨줄 수 있는방법이 없을까에 고민에 빠졌습니다.


그래서 해결한 방법이 바로 Root Directory를 변경 시킴으로써 localhost에 접속시에

바로 저 위에 보이는 이미지처럼 좌표값이 바로 보이게 하는 것 입니다.


방법은 다음과 같습니다.

Root Directory가 html Directory가 아닌 다른 Directory가 Root 일 경우에는

서버에서 파일의 목록이 보여집니다. 하지만 html Directory를 Root로 변경 시키면

localhost서버에서 접속시 바로 좌표값을 볼수가 있습니다.


자 그럼 지금부터 Root Directory변경을 시작하겠습니다.



1. etc디렉토리 안의 파일열기

sudo gedit /etc/apache2/apache2.conf

sudo gedit /etc/apache2/sites-available/000-default.conf


2. 수정하기

* apache2.conf *

<Directory /var/www>

...

...

</Directory>


* 000-default.conf *

DocumentRoot /var/www/html

위 내용에서  "/var/www"   "/var/www/html" 부분을 원하는 폴더의 경로로

지정하면 Root Directory가 됩니다. 저희 같은 경우는 html디렉토리를 끝으로

지정해 줌으로써, localhost에 접속시 바로 좌표값이 나오도록 했습니다.


이렇게 문제해결을 성공적으로 끝 맞췄습니다. 다음 포스팅 부터는

Arduino를 어떻게 사용했는지 Arduino에 관한 포스팅으로 찾아 뵙겠습니다.

그럼이만~~ 

posted by pgmr이상현