728x90

개발 304

Linux - (Wordpress + MySQL5.7 + PHP 7.3) 설치

이번 포스팅은 Linux를 통해 Wordpress, MySQL5.7, PHP 7.3 설치에 대해 알아볼 것이다. Wordpress 워드프레스(WordPress)는 세계 최대의 자유-오픈 소스 소프트웨어 저작물 관리 시스템이다. PHP로 작성되었으며, MySQL 또는 MariaDB가 주로 사용된다. MySQL 오픈 소스의 관계형 데이터베이스 관리 시스템이다. 다중 스레드, 다중 사용자 형식의 구조질의어 형식의 데이터베이스 관리 시스템이다. PHP 프로그래밍 언어의 일종으로 동적 웹페이지를 만들기 위해 설계되었으며 이를 구현하기 위해 PHP로 작성된 코드를 HTML 소스 문서 안에 넣으면 PHP로 작성된 코드를 HTML 소스 문서 안에 넣으면 PHP 처리 기능이 있는 웹 서버에서 해당 코드를 인식하여 작성자..

개발/Linux 2022.04.25

PythonWeb/Django - 설문조사 서비스 만들기 / 3

1. 투표 목록 2. 투표 상세 3. 투표 기능 4. 투표 결과 위의 네가지 뷰를 만들 것이다. - 각각의 뷰는 아직 특별한 기능은 없이 값만 출력할 것이다. 이 뷰가 동작하도록 URL을 연결해 보겠다. - 추가한 3개의 뷰를 위한 URL을 연결했다. index뷰와 다르게 특이한 모양을 가진다. 각 URL에 있는 는 변수를 의미한다. 이 부분에 해당하는 값을 뷰에 인자로 전달한다. - 실제 동작되는 뷰를 만들기 위해 index View부터 수정한다. - loader를 이용해 index.html를 불러오고 여기에 미리 만들어 둔 투표 목록을 context라는 변수를 이용해 전달한다. - render라는 단축 함수를 이용하면 간단하고 편리하다. - render 메서드는 request와 템플릿 이름 그리고 사..

개발/Django 2022.04.19

Pythonweb/Django - 설문조사 서비스 만들기 / 2

- 데이터베이스 만들기 - django.db.backends.sqlite3, django.db.backends.postgresql, django.db.backends.mysql, django.db.backends.oracle 이렇게 4가지 사용할 수 있다. - 데이터베이스를 만들고 초기화 한다. - 모델 만들기 장고에서 모델은 데이터베이스의 구조도이다. 데이터베이스에 어떤 테이블을 만들고 어떤 컬럼을 갖게 할 것인지 결정한다. 또 해당 컬럼의 제약 조건까지도 모델에서 결정한다. 이 모델은 보통 models.py에 작성하고 클래스 형태다. 두개의 모델을 만들 것 이다. - 장고의 모델은 [models.Model]을 상속 받는다. 이 부모 클래스가 실제로 데이터베이스와 ORM을 이용해 동작하는 기능들을 가지..

개발/Django 2022.04.12

Pythonweb/Django - 설문조사 서비스 만들기 / 1

- 이번 포스팅은 Pythonweb/Django를 이용하여 설문조사 서비스를 만들어 볼 것이다. - 프로젝트 만들기 - 장고를 설치한다. - 장고 프로젝트를 만들어준다. - 웹 서버 시작하기 - 기본 포트번호는 8000 포트이고, 포트를 변경하고 싶다면 포트 번호를 인수로 전달한다. python manage.py 0:8000으로도 접속이 가능한데 0은 0.0.0.0의 약어이고, 이 형태로 동작 시킬 때는 settings.py에 있는 ALLOWED_HOSTS를 설정해야 한다. - 설문조사 앱 만들기 - polls 앱을 생성한다. - 첫번째 뷰 만들기 - views.py에 뷰를 만든다. 뷰를 만들었으면 뷰를 호출하기 위한 URL이 있어야 한다 . URL 연결을 위해 polls 폴더에 urls.py 파일을 만..

개발/Django 2022.04.10

Pythonweb/Django - 디자인 패턴과 MTV, MVC

- 이번 포스팅은 디자인 패턴과 MTV에 대해 알아볼 것이다. - 객체 지향 프로그래밍 설계를 할 때 자주 발생하는 문제들을 피하기 위해 사용되는 패턴이다. 협업해서 개발할 때 다른 사람이 작성한 코드, 기존에 존재하는 코드를 이해하는 것은 어렵다. 디자인 패턴은 의사소통 수단의 일종으로서 이런 문제를 해결해준다. 장고에서이는 이를 MTV라고 부른다. - MVC와 MTV - 웹 프로그래밍에서 자주 사용되는 디자인 패턴은 MVC이다. Model-View-Controller의 약어다. - Model : DB의 구조를 결정한다. 대부분의 경우 테이블을 작성할 때 사용하는데 테이블의 이름, 각 열의 이름과 타입 등을 설계할 때 사용한다. - View : 사용자에게 보여지는 UI 부분이다. HTML 코드 등 실질..

개발/Django 2022.04.10

Linux - NFS + (Windows 환경에서도 사용)

- 이번 포스팅은 NFS에 대해 알아볼 것이다. NFS는 (Network File System)의 약자로 네트워크에 파일을 저장하는 방식이다. 즉 원격 컴퓨터에 있는 파일 및 디렉토리에 엑세스하고 해당 파일 디렉토리가 로컬에 있는 것처럼 사용하는 분산 파일 시스템이다. 또 서로 다른 운영체제끼리 파일 디렉토리 공유도 가능하다. - NFS SERVER (linux) - NFS를 사용하기 위해 nfs-utils 패키지를 설치해준다. - /etc/exports NFS를 사용하기 위해 패키지를 nfs-utils 파일을 설치하였고 해당 네트워크 파일 시스템의 설정은 /etc/exports 파일에 작성해준다. * NFS 주요 옵션 1. rw : 읽기/쓰기 2. root_squash : Client에서 접속 시 익명..

개발/Linux 2022.04.08

Linux - MAIL

- 이번 포스팅은 MAIL을 리눅스에서 설정하여 windows 환경에서 mail 프로그램을 설치하여 사용해보는 작업을 해 볼 것이다. Mail (전자 우편) 1. 보내는 메일 Server - SMTP : TCP 25 2. 받는 메일 Server - POP : TCP 110 - 메일을 읽으면 Client쪽으로 다운로드 된다. - 전용 단말이 없는 경우에 사용하면 여러군데로 흩어진 메일을 모아야 하는 단점이 발생한다. - IMAP : TCP 143 - 메일을 읽어도 서버에 남는다. - 메일 사서함 용량 관리가 필요하다. - Dovecot - mail을 사용하기 위한 패키지를 설치한다. - /var/named/baikis.xyz 파일에서 mail 도메인을 사용하기 위해 mail.baikis.xyz 도메인을 생..

개발/Linux 2022.04.08

Linux - DNS (windows - 설정 확인)

- 이번 포스팅은 저번에 이어서 DNS 작업을 리눅스에서 해 볼 것이다. 설정 확인 windows 환경에서 해 볼 것이다. - yum install -y bind bind-utils bind-libs DNS를 리눅스에서 사용하기 위해선 bind 패키지를 설치해야 한다. - 패키지 설치 확인 - /etc/named.conf named 데몬의 설정 파일이다. DNS 서버를 구축에 필요한 파일이다. 이 파일에는 도메인 설정을 위한 내용들이 있다. - 13 : DNS port 53에 어떤 IP를 접근 가능하게 할 것인지 설정하는 파일이다. any일 경우 불특정 다수의 접근이 가능하게 설정하는 것이다. 21 : 재귀 질의가 올 때 어떤 IP로 응답을 받을 것인가에 대한 설정이다. - /etc/named.rfc19..

개발/Linux 2022.04.07

Linux - HTTP

- 이번 포스팅은 리눅스에서 HTTP 설정에 대해 알아 볼 것이다. 리눅스에서 웹 서버 설정을 하여 웹 페이지를 만드는 작업을 해볼 것이다. 4. HTTP yum install -y httpd - http 패키지를 설치한다. rpm -qa httpd - http 패키지가 제대로 설치 되었는지 확인한다. /etc/httpd/conf/httpd.conf - http 관련 설정 파일이다. 편집기를 이용해 설정 파일 내용을 확인한다. - 31 : 아파치 서버의 루트 디렉토리를 의미한다. httpd가 참조된 파일을 찾는 위치를 지정하는 곳이다. 즉 아파치를 실행하게 되면 /etc/httpd 디렉토리에서 참조를 하게된다. - 42 : 기본적으로 웹 서버는 포트번호 80(http), 443(https)를 제공한다. ..

개발/Linux 2022.04.07
728x90