티스토리 뷰
센토스7, 아파치, PHP, MariaDB의 로고들...(그냥 짤방)
서버에 센토스7을 설치했는가?
난 통큰아이에서 새로 서버를 임대했고, 통큰아이에선 Centos7 64bit 버전을 깔아준다.
그래서 난, Centos7 64bit에 Apache2.4와 PHP7, 그리고 MariaDB 10을 설치해 웹 서버를 운용하려 한다.
(2019.03.12) - php7.3 기준으로 최신 업데이트 한 내용입니다.
1. YUM 설치를 도와줄 저장소 설치
기본적으로 센토스7에서 제공하는 APM은 최신버전이 아니다. 그냥 yum install php 이런식으로 깔면 아마 5.4나 5.5가 깔릴 것이다. 난 무조건 최신을 좋아하므로 열라 빠르다는 PHP7을 설치하기 위해 간편한 레미저장소의 힘을 빌리기로 했다.
# yum install epel-release
# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
# rpm -Uvh http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
(센토스6 사용자는 위 저장소 주소에서 7을 6으로 바꿔주면 된다)
2. Apache 2.4.6 설치
좀전에 준비한 저장소를 이용해 설치한다.
# yum --enablerepo=epel,remi install httpd
요건 아파치 시작하기 / 정지 / 재시작 / 서버리붓하면 자동실행
# systemctl start httpd
# systemctl stop httpd
# systemctl restart httpd
# systemctl enable httpd
아파치 설정.
아파치 설정파일을 에디터로 연다
# vi /etc/httpd/conf/httpd.conf
막간 vi에디터 안내
i를 누르면 수정 가능, ESC키를 누르면 수정화면에서 나오고 :q(그냥 나오기) :wq(저장하고 나오기)
PUTTY쓰시는 분들은 어디서든 마우스 우클릭하면 다른데서 복사한 것을 붙여넣기 하실 수 있다.
-해당하는 부분만 고쳐준다
User nobody
Group nobody
ServerAdmin donza@forcatmon.com
ServerName localhost
서버에 noye라는 계정이 있다면 폴더 접근 권한을 주어야 한다.(계정을 만든 후에 추가한다)
<Directory "/home/noye">
AllowOverride All
Require all granted
</Directory>
짧은 주소를 이용하고 싶다면 추가
LoadModule rewrite_module modules/mod_rewrite.so
80포트(http)로 들어오는 모든 친구들 중에 noye.kr로 접속한 친구는 /home/noye/html로 보내줘~ 라는 뜻이다
계정을 추가하는 만큼 추가해준다
<VirtualHost *:80>
ServerAdmin donza@forcatmon.com
DocumentRoot /home/noye/html/
ServerName noye.kr
</VirtualHost>
끝나면 ESC키로 수정모드를 빠져나와 :wq엔터로 저장 후 끈다.
그리고 아파치 재시작
# systemctl restart httpd
3. PHP 7 설치
# yum-config-manager --disable remi-php54
# yum-config-manager --enable remi-php73
먼저 PHP7 본패키지를 설치.
# yum install php
기타 잡것들 설치.(더 필요한 분은 yum search php명령으로 찾아보고 설치)
# yum install php-mysql php-xml php-soap php-xmlrpc php-mbstring php-gd php-mcrypt
PHP 설정(자기 필요에 맞게 수정한다)
# vi /etc/php.ini
PHP메모리 원하는 만큼
memory_limit = 128M
포스트 하나당 총 파일사이즈(고로 파일첨부 최대 사이즈보다 커야함)
post_max_size = 30M
파일첨부 최대 사이즈
upload_max_filesize = 20M
mysql 사용을 위한 폴더 권한부여
# chmod 777 /var/lib/php/session
아파치 재시작 한번~
# systemctl restart httpd.service
4. MariaDB 10 설치
설치 전, 해당 내용으로 저장소 파일을 만든다.
# vi /etc/yum.repos.d/MariaDB.repo
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.3/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
설치 그리고 시작, 그리고 루트 비밀번호 설정
# yum install MariaDB-server MariaDB-client
# systemctl start mysql
# mysql_secure_installation
5. 설치된 버전을 확인하고 뿌듯함을 느낀다.
버전 확인은 -v
# php -v
PHP 7.3.3 (cli) (built: Mar 5 2019 13:50:38) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.3, Copyright (c) 1998-2018 Zend Technologies
# httpd -v
Server version: Apache/2.4.6 (CentOS)
Server built: Nov 5 2018 01:47:09
# mysql -V
mysql Ver 15.1 Distrib 10.3.13-MariaDB, for Linux (x86_64) using readline 5.1
6. 계정을 만들어볼까?
계정을 만든다
# useradd noye
# passwd noye
이때 /home에 생긴 /noye 폴더의 권한이 755인지 확인한다.(아니라면 403페이지를 볼 듯)
# chmod 755 /home/noye
DB에도 계정에서 사용할 테이블을 만들어 준다.
mysql접속
# mysql -u root -p
noye 사용자가 noye테이블을 사용 할 수 있게끔 설정
MariaDB [(none)]> create database noye;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> create user 'noye'@'%' identified by '비번';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> create user 'noye'@'localhost' identified by '비번';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> grant all privileges on noye.* to 'noye'@'%';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> grant all privileges on noye.* to 'noye'@'localhost' identified by'비밀번호';
#. 각종 에러 모음
에러 있으신 분들 남겨 주시면 제가 아는 만큼 답을 올려놓겠습니다
#
'웹디자인 > 코딩' 카테고리의 다른 글
[CSS] 편리한 표준코딩을 위한 box-sizing 속성 (0) | 2017.02.20 |
---|