일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- java
- JavaScript
- 제이쿼리
- html
- 6월 공모주 청약 일정
- SQL
- 주식
- IPO
- 주식 청약
- 주식 청약 일정
- 공모주
- Oracle
- 코드이그나이터
- 자바스크립트
- 리눅스
- 공모주 청약 일정
- 7월 공모주 청약 일정
- 공모주 청약
- MYSQL
- 맥
- Eclipse
- codeigniter
- jquery
- php
- Stock ipo
- 오라클
- Stock
- linux
- 자바
- css
- Today
- Total
개발자의 끄적끄적
[php] 워드프레스 설치하기 [펌] 본문
[php] 워드프레스 설치하기 [펌]
워드프레스를 직접 서버에 업로드하여 설치하는 방법을 다룹니다.
워드프레스 다운로드
아래의 사이트에서 원하는 버전으로 다운로드 받아 압축을 푼다.
http://wordpress.org/ (영문 버전)
http://ko.wordpress.org/ (한국어 버전)
업로드
압축을 풀면 wordpress라는 디렉토리를 발견할 수 있을텐데 이 폴더의 이름을 변경해야 한다. 이는 보안적인 측면에서 도움이 된다.
FTP를 사용해서 계정에 업로드한다.
(FTP 프로그램 - 파일질라 https://filezilla-project.org/download.php?type=client)
디렉토리 구조는 아래와 같게
wordpress(폴더명은 변경 - 예제는 편의상 그대로 사용)
└ wp-admin
└ wp-content
└ wp-includes
└ 기타 파일들
위와 같이 루트 폴더에 바로 업로드하지 않고 서브폴더(워드프레스 폴더)체로 업로드 하면 악의 적인 봇이 사이트를 스캐닝하고 검색하면서 워드프레스 파일을 찾을 수 없도록 한다. (워드프레스 폴더명을 예상치 못할 이름으로 변경하자) - 은둔 보안 방식, 또한 루트 디렉토리를 깨끗하게 유지할 수 있다.
환경설정 파일(wp-config) 만들기
http://도메인/wordpress/wp-admin/install.php에 접속한다.
서버 환경에 따라 위와 같은 페이지 대신 오류가 발생하기도 하는데 그때는 수동 설정을 하면 된다. 수동 설정은 페이지의 하단에 따로 설명한다.
양식에 맞게 자신의 데이터베이스 이름 및 MySQL 정보를 입력한다.
※ 테이블 접두어는 꼭 변경하여 보안을 강화한다. (ex. apfhd_ )
관리자 환경 설정
사이트 제목에 사이트 상호를 작성하고 사용자명은 기본 admin이지만 꼭 변경하여 보안을 강화한다. 사용자명은 사이트에 로그인할 때 사용될 관리자이다. 이메일주소도 실제 존재하는 메일주소를 입력한다.
설치에 성공하면 아래와 같은 화면을 볼 수 있다. 로그인 해서 접속해본다.
wp-config 수동 설정
wp-config 파일을 자동으로 생성할 수 없는 경우 수동으로 생성한다.
wp-config 파일 생성
wordpress폴더 아래에 있는 wp-config-sample.php 파일을 복사한후 이름을 wp-config.php로 변경한다.
wp-config.php를 메모장이나 에디터를 이용하여 양식에 맞게 수정한다.
PHP
/** The name of the database for WordPress */
define('DB_NAME', 'DB 명');
/** MySQL database username */
define('DB_USER', 'MySQL 사용자이름');
/** MySQL database password */
define('DB_PASSWORD', 'MySQL 암호');
/** MySQL hostname */
define('DB_HOST', 'localhost');
/** Database Charset to use in creating database tables. */
define('DB_CHARSET', 'utf8');
출처: https://webdir.tistory.com/99 [WEBDIR]
호스팅업체를 사용한다면 DB명은 가입할때 사용한ID명으로 만들어지는 경우가 많고, 때론db_ID명혹은ID명_db으로 만들어진다.
인증키 삽입
워드프레스는 보안을 위해 인증키를 삽입할 수 있는데 아래의 주소에서 인증키를 복사후 wp-config.php에 삽입한다.https://api.wordpress.org/secret-key/1.1/salt/
PHP
/**#@+
* Authentication Unique Keys and Salts.
*
* Change these to different unique phrases!
* You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service}
* You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again.
* @since 2.6.0
*/
define('AUTH_KEY', 'xzo+hsOY%s2V]F)}lim8* */zw!2dGQ8Sl2TvGd wmj,kG@]hv:};');
define('LOGGED_IN_KEY', 'XfB%<+8]z+T^=oyr ^MK$l7u$:<10tp+6@r@]bt(f.y! i:k7T+aG`}1.pe2hjmm');
define('NONCE_KEY', 'w+ba^s{3api(Rd2-d+~a=DrpXPQoiNFPtJ%/2E%%C@?2;PV4>!QJ~GsU&,h/M|P1');
define('AUTH_SALT', 'L`|5dPaN/PsC:$o{HWb3jTqzkrt>mK0yIY2o65zVnxtnSn-6!.rmo8xSu|?K-E&<');
define('SECURE_AUTH_SALT', 'r#^b%+]1HQ Qb!tEYXvLUM!iw<6tsQjl>h.;O=YC|h(TNu{4|d4Z*z4[bq0`&q$%');
define('LOGGED_IN_SALT', 'B5+IYIi{h=e]P*E;c<_(.-eLhVQJ5u:wN84B+fndO+H=D7$OgsKF{,qF*l<`RAXi');
define('NONCE_SALT', 'qpP2K1gkua/v(#xNZzc]G,FOHY+js>HqCKy*ROjZ%$t(8wK3Ujy_lb!CP?jk
출처: https://webdir.tistory.com/99 [WEBDIR]
워드프레스는 설치할때 테이블명 앞에 이 곳에서 설정한 문자를 삽입한다. 이는 하나의 DB에 여러개의 워드프레스 사이트를 구성할 수 있게 해준다. 기본으로 설정된 'wp_' 와 같은 테이블 이름은 공개되어 있어 보안에 취약성이 따른다. 고로 이를 꼭 다른 이름으로 변경하도록 하자.
PHP
/**
* WordPress Database Table prefix.
*
* You can have multiple installations in one database if you give each a unique
* prefix. Only numbers, letters, and underscores please!
*/
$table_prefix = 'wp_';
출처: https://webdir.tistory.com/99 [WEBDIR]
수정한 wp-config.php를 워드프레스 폴더안에 업로드 한다.
출처:https://webdir.tistory.com/99[WEBDIR]
'개발 > php' 카테고리의 다른 글
[php] 그누보드 메일 발송하기 [펌] (0) | 2020.09.08 |
---|---|
[php] 워드프레스 이메일 발송 처리 [펌] (0) | 2020.09.07 |
[php/Gnuboard] 그누보드 5 설치과정 (5.3.2.6 버전) [펌] (0) | 2020.09.06 |
[php] 두 좌표간의 거리 구하기 예제 (0) | 2020.09.06 |
[php] 요일 구하기 [펌] (0) | 2020.09.03 |