happy cat image

everdevel

우리 모두의 웹 입문, 에버디벨

에버디벨이 책을 냈어요.!!
눌러주세요.

지은이 : 에버디벨 운영자

UI 변경

우분투 권한 설정

앞에서 권한에 막혀 helloworld.php파일을 서버의 html폴더에 업로드하는것에 실패했습니다.
즉 html폴더는 아무나 파일을 올릴수 없는 설정이 되어있는것입니다. 그럼 우분투가 설치된 서버 컴퓨터로 돌아와 권한설정을 하도록 하겠습니다.
우선 폴더를 이동하는 명령어를 익혀야 합니다.
폴더를 이동하는 명령어는 다음과 같습니다.

cd 이동할 폴더경로

위의 cd 명령어 다음 경로의 종류는 다음의 3가지가 있습니다.

/ 최상위 폴더로 이동
./ 현재 폴더
.. 한단계 위의 폴더

즉 var폴더의 www폴더의 html폴더로 이동을 하려면 다음의 명령어를 입력하면 됩니다.

cd /var/www/html

만약 현재 html폴더에 있고 html폴더 안에 korea라는 폴더가 있다고 할때 korea폴더로 이동을 한다면 다음의 명령어를 입력하면 됩니다.

cd ./korea

또한, korea폴더에서 다시 html폴더로 이동을 하고 싶다면 다음의 명령어를 입력합니다.

cd ..

그럼 우선 var폴더의 www폴더로 이동을 하기 위해 다음 명령어를 입력합니다.

cd /var/www

그리고 이동을 한 후 이동한 폴더의 있는 파일이나 폴더을 보는 명령어는 ls 입니다.

ls

하지만 이 명령어는 오직 파일이나 폴더의 이름만 보여주며 권한등에 관한 정보를 보여주지 않습니다.
권한정보도 함께 보려면 ls -al 이라는 명령어를 입력하면 됩니다.

ls -al

아래의 이미지는 html폴더로 이동해서 ls -al을 실행한 화면입니다

우분투 폴더 권한 정보 보기

위의 이미지에서 하늘색 박스를 보면 root가 있습니다.
이것은 root계정으로 접근이 가능하다는 것을 의미 하는데요 .
우리는 파일질라를 접속할 때 root가 아닌 리눅스를 설치할때 사용한 유저명을 이용해서 파일질라 프로그램을 통해 ftp에 접속했습니다.
그러므로 권한을 가진 사람이 root인데 우리는 root로 ftp에 접근하지 않아서 생긴 문제 입니다.
이럴때는 root라는 권한 대신 우리가 접속한 유저명으로 변경해 줘야 합니다.
아래는 사용권한을 가진 유저를 변경하는 명령어 입니다.

chown 유저명 폴더경로 및 폴더명

저의 경우 유저명이 teyonkin 이고 html의 유저명권한을 변경해야 하므로 저는 다음과 같은 명령어를 사용합니다.

chown teyonkin ./html
우분투 폴더 권한 정보 변경

하지만 아직입니다.
너무 복잡하죠? 이렇게 서버를 셋팅할때는 해야할게 너무나 많습니다.
이번엔 또 해줘야 하는것은 vsftpd프로그램의 설정을 변경해야 합니다.
ftp로 파일쓰기의 설정이 막혀있기 때문입니다.
리눅스에도 작동하는 여러 에디터 프로그램들이 있습니다.
우리는 vi라는 에디터를 사용해서 vsfptd의 설정파일인 vsftpd.conf 라는 파일의 설정을 변경하도록 하겠습니다.
이 파일은 최상단에 있는 etc 폴더 안에 있습니다.
vi에디터로 최상단에 있는 폴더 etc안의 vsftpd.conf 파일을 여는 명령어는 다음과 같습니다 .

vi /etc/vsftpd.conf

위의 명령어를 실행하면 아래의 화면이 보입니다.

vi 에디터

위의 화면에서 #write_enable=YES 이라는 것을 찾아야 합니다.
어떠한 패턴을 찾을 때는 슬래쉬를 사용합니다.
지금 이 화면에서 슬래쉬를 입력 후 #write_enable=YES 를 입력하여 엔터를 눌러주세요.
다음의 명령문을 보면 더 쉽습니다.

/#write_enable=YES

그럼 해당 위치를 찾아서 커서가 깜빡깜빡 할것입니다.
다음의 화면과 같이요.

vi 에디터

리눅스의 설정파일 안에서의 #은 주석을 뜻합니다.
저 주석을 없애야 ftp로 파일을 업로드 할 수 있습니다.
주석을 없애려면 이제 설정을 수정해야 하는데요.
이 상태에서 i를 누르면 수정모드로 변경됩니다.
i를 누르면 아래의 화면 하단 처럼 INSERT가 표시됩니다.
#write_enable=YES의 앞에 있는 #만 삭제해줍니다.

vi 에디터

아래는 #을 삭제한 화면 입니다.

vi 에디터

#을 삭제 후 ESC키를 누릅니다.
수정모드에서 벗어나게 됩니다.
아래의 화면은 ESC를 누른 화면이며 하단에 INSERT가 사라졌습니다.

vi 에디터

이제 이 파일을 저장하고 vi에디터를 꺼야합니다.
:(콜론)을 누릅니다. 아래는 :(콜론)을 누른화면 입니다.
콜론을 누르면 vi에디터 자체의 명령어를 입력하는 모드가 됩니다.

vi 에디터

:을 눌렀으면 wq를 입력합니다. wq는 저장 후 vi에디터를 끈다는 명령어 입니다.
저장을 하지 않으려면 wq대신에 q!를 누르면 됩니다.
우리는 저장을 해야 하기 때문에 wq를 누릅니다.

vi 에디터

그리고 엔터를 누르면 아래의 화면처럼 vi에디터에서 빠져나오게 됩니다.

vi 에디터

vsftpd의 설정을 변경했으니 이제 적용을 완벽히 시키도록 vsftpd 프로그램을 재시작 합니다.
vsftpd를 재시작 하는 명령어는 다음과 같습니다.

service vsftpd restart
vsftpd 재시작

이제 다시 filezilla로 돌아와서 html폴더 안에 helloworld.php파일을 드래그 해서 업로드 하면 성공!~

filezilla file upload

에버디벨의 완성 :: 웹코딩 시작하기

안녕하세요.
에버디벨 운영자입니다.
여러분이 늘 이용해 주셔서 하루 5명 오는 사이트가 1000명이 오는 사이트가 되었고,
또 그 이유로 사이트를 운영을 멈추지 않아 저같은 평범한 사람이 책까지 쓸 수 있게 되었습니다.
여러분이 찾지 않았다면 진작 사이트 접었습니다.
저의 웹개발 경력 2년을 쏟아내어서 6개월의 집필, 8개월의 교정기간을 거쳐 [웹코딩 시작하기]가 출간했습니다.
웹코딩 시작하기는 HTML5를 시작으로 CSS3 -> jQuery를 학습합니다.
그리고 앞에서 배운 내용으로 간단한 소통사이트를 반응형으로 제작합니다.
보통의 책은 HTML5 + CSS3로 끝나고 혹은 HTML5 + CSS3 + jQery로 끝나지만 웹코딩 시작하기는 여기서 끝내지 않았습니다.
그 다음 바로 데이터베이스중 하나인 MySQL를 학습하고, 그 이후 PHP를 학습니다. 그리고 앞에서 만든 소통사이트에 회원가입, 로그인 기능은 기본으로 진행하며, 스크롤이벤트를 이용하여 스크롤을 내리면 AJAX를 작동시켜 게시물을 더 불러오는 기능을 구현하고 자기의 로그기록을 파일에 쓰기, 그 밖에 자신의 프로필사진, 커버사진 등록, 댓글 쓰기등의 기능을 적용합니다.
본서는 웹코딩을 처음하는 사람이 하나에서 끝나지 않고 처음부터 시작해 프로젝트까지 완성해가며 전체적으로 시스템이 어떻게 작동하는지 전반적으로 알게하기 위해 태어났습니다.
적어도 지구에서 가장 친절한 웹 입문서라고 생각하는 책입니다.
에버디벨로 부족하셨다면 웹코딩 시작하기를 추천합니다.

어제보다 나은 나, 오늘 보다 나을 내일의 나를 만드는 :: 웹코딩 시작하기

목차보기

종이책 구입하기

전자책 구입하기

PART 1. 프론트엔드 HTML5 + CSS3 + jQuery

CHAPTER 1. HTML5

1. HTML5 소개

2. 메타 태그

3. 텍스트 태그

4. 이미지 태그

5. 하이퍼링크 태그(a 태그)

6. 리스트 태그

7. form 태그

8. 공간 태그

9. video 태그

11. svg와 canvas

12. table 태그

CHAPTER 2. CSS3

1. CSS 소개

2. CSS를 적용하는 세 가지 방법

3. 선택자(selector)

4. 텍스트를 꾸미는 CSS 요소

5. 가로 길이와 세로 길이 조정하기

6. 텍스트가 영역을 벗어날 때

7. HTML 엘리먼트의 위치 변경하기

8. 배경 꾸미기

9. 외곽선 긋기

10. float와 clear

11. 박스의 바깥 여백 설정하기

12. 박스의 안쪽 여백 설정하기

13. CSS 리셋

14. 애니메이션

15. transform

16. transition

17. display

18. 반응형 웹

19. 반응형으로 간단한 레이아웃 만들기

20. SVG 태그

CHAPTER 3. jQuery

1. jQuery 시작하기

2. 셀렉터

3. 엘리먼트 보이기와 숨기기

4. 클릭했을 때 무언가 하기

5. 마우스 포인터를 요소 위에 올릴 때 무언가 하기

6. 제이쿼리로 CSS 적용하기

7. 변수 사용하기

8. HTML 엘리먼트에 있는 텍스트 변경하기

9. HTML 태그 제어하기

10. 애니메이션 기능

11. 엘리먼트에 클래스 추가, 삭제하기

12. 엘리먼트의 이동

13. 폼 태그의 값 조정

14. 포커스

15. this 사용하기

16. 연산자

17. 함수 만들기

18. 변수에 대해서

19. 글로벌 변수와 로컬 변수

20. 조건문

21. 반복문

22. 스크롤 이벤트

23. AJAX

24. canvas 태그(HTML5)

project 나의 첫 웹서비스 만들기

CHAPTER 1. 나의 첫 웹서비스 프로젝트 소개

CHAPTER 2. 나의 첫 웹서비스 만들기 프로젝트 - front end

1. 메인 페이지 만들기(index.html)

2. 나의 페이지 만들기(me.html)

3. 모두의 페이지 만들기(all.html)

PART 2. 백엔드 MySQL + PHP

CHAPTER 1. MySQL

1. 데이터베이스란?

2. MySQL 시작하기

3. 데이터베이스 만들기

4. 테이블

5. 필드의 데이터 크기와 데이터형 지정하기

6. 테이블 생성하기

7. 필드의 추가, 수정, 삭제

8. 테이블 삭제하기

9. 테이블에 데이터 입력하기

10. 데이터 불러오기

11. 데이터의 값을 변경, 삭제하기

12. 테이블 초기화

13. 2개 이상의 테이블 사용하기(JOIN)

14. 집계함수

15. 그룹별 집계

16. 출력 결과의 정렬

17. 불러올 레코드 수 지정하기

18. 2개 이상의 테이블을 묶어 사용하기

19. 쿼리문 안의 쿼리문 서브쿼리

20. 특정 필드에 같은 값을 넣지 않는 방법

21. 서로 다른 필드의 값을 합쳐서 출력하기

22. 검색을 더욱 빠르게 하는 인덱스

CHAPTER 2. PHP

1. PHP 소개

2. 출력문

3. 주석

4. 변수

5. 연산자

6. 배열>

7. 데이터형

8. 조건문

9. 반복문

10. 함수

11. 함수 만들기

12. POST와 GET

13. 기능의 사물화

14. 코드의 재활용

15. PHP와 MySQL의 연동

16. 상수

17. 정규 표현식

18. 파일 업로드

19. 디렉터리 함수

20. 파일 함수

21. Anchor 태그의 ping 속성과 AJAX

22. 쿠키와 세션

23. 객체지향 프로그래밍

project 나의 첫 웹서비스 만들기

CHAPTER 3. 나의 첫 웹서비스 만들기 프로젝트 - back end

3-1. 회원가입 기능

3-2. 로그인, 로그아웃 기능

3-3. 게시물 등록하기

3-4. 게시물 불러오기

3-5. 댓글 등록하기

3-6. 댓글 불러오기

3-7. 게시물 공감하기

3-8. 모두의 페이지

3-9. 포토 업로드 기능

3-10. 나의 로그 만들기

강좌로 돌아가기