>php教程 >php手册 >CentOS 7.2mini 버전에서 php7.0.10+MySQL5.7.14+Nginx1.10.1 컴파일 및 설치

CentOS 7.2mini 버전에서 php7.0.10+MySQL5.7.14+Nginx1.10.1 컴파일 및 설치

WBOY
WBOY원래의
2016-09-02 08:42:561971검색

1. 설치 전 준비사항

1. 냠 업데이트 #시스템 업데이트

2. yum install gcc gcc-c++ autoconf automake cmake bison m4 libxml2 libxml2-devel libcurl-devel libjpeg-devel libpng-devel libicu-devel    #安装php、MySQL、Nngix所依赖的包

3. 다음 패키지를 다운로드합니다. #소스파일을 루트 디렉터리에 모두 다운로드했는데, 소스파일 저장 디렉터리는 독자가 직접 수정할 수 있습니다

3.1 libmcrypt-2.5.8.tar.gz

3.2 mcrypt-2.6.8.tar.gz

3.3mhash-0.9.9.9.tar.gz

3.4 zlib-1.2.8.tar.gz

다음과 같이 압축을 풀고 설치하세요.

#tar -zvxf libmcrypt-2.5.8.tar.gz

#cd libmcrypt-2.5.8

#./구성

#make && make insatll

4. 소프트웨어를 설치할 때 종속 패키지가 설치되지 않았다는 메시지가 나타나면 yum install * -y(*는 관련 패키지를 나타냄)를 실행할 수 있습니다


2. Nginx 컴파일 및 설치

1. 공식 홈페이지 http://nginx.org/en/download.html로 이동하여 nginx-1.10.1.tar.gz의 가장 안정적인 버전을 다운로드하세요

2. 컴파일 단계는 다음과 같습니다

1. winSCP를 통해 nginx-1.10.1.tar.gz를 /root 디렉토리에 업로드
1.1 groupadd -r nginx                               #nginx 그룹 생성 nginx #로그인 권한 없이 새 nginx 사용자 생성
1.3 id nginx                               #nginx 그룹 및 사용자 보기
2. tar -zvxf nginx-1.10.1.tar.gz

3. cd nginx-1.10.1

4. ./configure --help를 통해 컴파일 구성 매개변수를 보거나, http://nginx.org/en/docs/configure.html을 참조하여 다음 매개변수를 한 줄로 작성해야 합니다 ./configure

  --prefix=/usr/local/nginx

  --modules-path=/usr/local/nginx/modules
  --with-http_ssl_module
  --pid-path =/usr/local/nginx/nginx.pid
  --user=nginx
  --group=nginx

5. make && make install #컴파일 및 설치

6. nginx 시작

6.1 cd /usr/local/nginx

6.2 sbin/nginx #시작, sbin/nginx를 사용할 수 있습니다. -? nginx 관련 작업 명령 보기


7. /usr/lib/systemd/system 디렉터리에 새로운 nginx.service 파일을 생성하여 systemctl stop|start|reload nginx.service를 통해 nginx를 동작시킬 수 있습니다. https://도 참고하실 수 있습니다. www.nginx.com/resources/wiki/start/topics/examples/systemd/, 내용은 다음과 같습니다:
 [Unit]

 Description=NGINX HTTP 및 역방향 프록시 서버

 After=syslog. 대상 네트워크.대상 원격-fs .대상 nss-lookup.대상

 [서비스]
 Type=forking

 PIDFile=/usr/local/nginx/nginx.pid

 ExecStartPre=/usr/local/nginx/sbin/nginx -t
 ExecStart=/ usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s 중지
PrivateTmp= 사실

 [설치]
 WantedBy=multi-user.target



3. MySQL 컴파일 및 설치

1. 공식 웹사이트 http://dev.mysql.com/Downloads/MySQL-5.7/mysql-boost-5.7.14.tar.gz로 이동하여 Boost가 포함된 버전 5.7.14를 다운로드하세요

2. 컴파일 단계는 다음과 같습니다

 

1. winSCP를 사용하여 mysql-boost-5.7.14.tar.gz를 /root 디렉터리에 업로드합니다.

 2.groupadd mysql

 3. useradd -r -g mysql -s /bin/false mysql

 4. cmake를 사용하여 mysql을 컴파일합니다. 관련 매개변수는 https://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html을 참조하여 다음 매개변수를 작성해야 합니다. 한 줄로

 cmake

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock
-DSYSCONFDIR=/usr/local/mysql/etc
-DSYSTEMD_PID_ DIR=/usr /local/mysql
 -DDEFAULT_CHARSET=utf8
 -DDEFAULT_COLLATION=utf8_general_ci
 -DWITH_INNOBASE_STORAGE_ENGINE=1
 -DWITH_ARCHIVE_STORAGE_ENG INE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1
- DMYSQL_DATADIR=/usr/local/mysql/data
 -DWITH_BOOST=boost
 -DWITH_SYSTEMD=1

5. make && make install

6. mysql 구성 및 데이터베이스 초기화
6.1 cd /usr/local/mysql # 컴파일 디렉터리 입력
6.2 chown -R mysql 6.3 chgrp -R mysql #디렉터리 그룹 수정
6.4 cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld #mysqld 서비스 구성
6.5 cp /usr/local/mysql/support-files/my -default.cnf /usr /local/mysql/my.cnf #Configure my.cnf
6.5.1 my.cnf 파일의 [mysqld]에 다음 내용을 복사합니다.
user = mysql
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
server_id = /usr/local/mysql/mysqld.pid
소켓 = /usr/local/mysql/mysql.sock
6.5 chkconfig mysqld on #부팅 시 mysqld가 자동으로 시작되도록 설정
6.6 bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/ usr/local/ mysql/data #데이터베이스 초기화
6.7 bin/mysqld --user=mysql & #Mysql 시작, mysqld를 루트로 실행하는 방법을 알아보려면 매뉴얼의 "보안" 섹션을 읽어보세요!라는 메시지가 나타나면 user=를 추가하세요. 루트 사용자로 시작하려면 my.cnf에 루트

7. 루트 사용자 로그인 비밀번호를 수정하고 루트 사용자가 원격으로 로그인할 수 있도록 허용

7.1 mysql -u root --skip-password
7.2 ALTER USER 'root'@'localhost' IDENTIFIED BY '123456 ';
7.3 루트 사용자가 원격으로 로그인하도록 허용
7.3.1 use mysql;
7.3.2 update user set host='%' where user='root' and host='localhost';
허용(사용자 세트 호스트='localhost' 업데이트(여기서 user='root'; #disable))
7.3.3 권한 플러시;
7.3.4 서비스 mysqld 재시작

8. 서비스 mysqld start|stop에서 MySQL 서버 PID 파일을 찾을 수 없거나 MySQL 서버(/usr/local/mysql/bin/mysqld_safe)를 찾을 수 없는 문제를 해결하세요. 이 파일을 읽으시면 됩니다 관련 오류 해결
8.1 chmod 777 /usr/local/mysql #mysqld.pid 파일을 /usr/local/mysql 디렉토리에 저장하도록 설정했기 때문에 쓰기 권한이 있는지 확인하세요
8.2 winSCP init.d/mysqld 파일을 통해 /etc/ 수정
8.2.1 basedir=/usr/local/mysql #수동 지정
8.2.2 datadir=/usr/local/mysql/data #수동
지정 8.2.3 mysqld_pid_file_path= /usr/local/mysql/mysqld.pid #수동으로 지정
8.2.4 이 파일에서 mysqld_safe를 포함하는 주석 처리되지 않은 모든 문자를 mysqld로 교체


4. PHP 컴파일 및 설치

1. 공식 웹사이트 http://php.net/downloads.php로 이동하여 php7.0.10 버전을 다운로드하세요

2. 컴파일 단계는 다음과 같습니다

1. winSCP를 사용하여 php-7.0.10.tar.gz를 /root 디렉터리에 업로드합니다.

2. tar -zvxf php-7.0.10.tar.gz #압축해제

3. 컴파일 PHP 매개변수 구성 ./configure --help 명령을 사용하면 모든 컴파일 구성 항목을 볼 수 있습니다.

./configure
--prefix= /usr/local/php
  --exec-prefix=/usr/local/php
  --datadir=/usr/local/php
  --with-config-file-path=/usr/ 로컬/php/etc - -with-gd
--with-iconv
--enable-mbstring
--enable-fpm
--enable-mysqlnd

4. make && make install #컴파일 및 설치

5. cd /usr/local/php #컴파일 디렉토리를 입력하세요

6. 관련 구성 파일 수정

6.1 cp /usr/local/php/etc/php.ini.default /usr/local/php/etc/php.ini #php.ini 관련 구성은 다음을 기반으로 합니다. 프로젝트를 직접 수정하고, PHP를 지원하도록 nginx를 구성하고, http://php.net/manual/zh/install.unix.nginx.php

를 참조하세요.   6.2 cp /usr/local/php/etc/php-fpm .conf.default /usr /local/php/etc/php-fpm.conf # [global]에서 pid 앞의 항목을 제거합니다.

6.3 cp /usr/local/php/etc/php-fpm.d/www .conf.default /usr /local/php/etc/php-fpm.d/www.conf # 대략 23~24번째 줄에서 사용자 및 그룹을 수정합니다. 예: user = nginx, group = nginx

7. chmod 777 /usr/local/php/var/run # 기본 PID 파일은 /usr/local/php/var/run 디렉터리에 작성되어 있으므로 디렉터리 권한을 수정하세요

8. sbin/php-fpm #php를 시작하면 sbin/php-fpm -h를 통해 관련 작업 명령어 목록을 볼 수 있습니다

9. /usr/lib/systemd/system 디렉토리에 새로운 php-fpm.service 파일을 생성하여 systemctl stop|start|reload php-fpm.service를 통해 php-fpm을 동작시킬 수 있도록 합니다.
[단위]
설명=PHP FastCGI 프로세스 관리자
After=syslog.target network.target
Before=nginx.service

 [서비스]
 Type=forking
 PIDFile=/usr/local/php/var/run/php-fpm.pid
 ExecStart=/usr/local/php/sbin/php-fpm
ExecStop=/bin/kill -QUIT `cat /usr/local/php/var/run/php-fpm.pid`
ExecReload=/bin/kill -USR2 `cat /usr/local/php/ var/run/php-fpm.pid`
 PrivateTmp=true

 [설치]
 WantedBy=multi-user.target


5. redis 및 phpredis 확장 프로그램 설치

1. winSCP를 사용하여 redis-3.0.0.tar.gz를 /root 디렉토리에 업로드합니다

2. tar -zvxf redis-3.0.0.tar.gz -C /usr/local #/usr/local 디렉터리에 추출

3. yum install tcl -y #redis-test는 이 패키지에 따라 다릅니다.

4. cd /usr/local/redis-3.0.0

5. chmod 777. #현재 디렉토리는 쓰기 가능합니다. redis.pid 파일을 /usr/local/redis-3.0.0에 할당했습니다

6. 만들기 && 설치하기

7. vi /usr/local/redis-3.0.0/redis.conf #redis 구성 파일 수정
7.1 daemonize yes
7.2 pidfile /usr/local/redis/redis.pid

8. src/redis-server & #redis 시작
src/redis-cli shutdown #redis 닫기
src/redis-server --help # 관련 도움말 명령 보기

9. systemctl stop|start redis.service를 통해 redis를 동작시킬 수 있도록 /usr/lib/systemd/system 디렉토리에 새로운 redis.service 파일을 생성합니다.
 [Unit. ]
 설명 =Redis 3.0.0 서비스
 After=syslog.target

 [서비스]
 Type=forking
 PIDFile=/usr/local/redis/redis.pid
 ExecStartPre=/usr/local/redis/src/redis-server /usr/local/redis /redis.conf
 ExecStart=/usr/local/redis/src/redis-server /usr/local/redis/redis.conf
 ExecStop=/usr/local/redis/src/redis-cli 종료
PrivateTmp=true

[설치]
WantedBy=multi-user.target

10. phpredis 확장 설치
10.1 winSCP를 사용하여 phpredis-3.0.0.tar.gz를 /root 디렉터리에 업로드합니다.
10.2 tar -zvxf phpredis-3.0.0.tar.gz -C /usr / local #/usr/local 디렉토리에 추출
10.3 cd /usr/local/phpredis-3.0.0
10.4 /usr/local/php/bin/phpize
10.5 ./configure --with - php-config=/usr/local/php/bin/php-config
 10.6 make && make install
 10.7 php.ini 파일에 Extension=redis.so
추가  10.8 Nginx/Apache 다시 시작
10.9 php-fpm 다시 시작


6. 지금까지 VirturBox에서 CentOS7.2로 LNMP 환경을 성공적으로 설정했습니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.