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(*는 관련 패키지를 나타냄)를 실행할 수 있습니다
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.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]
After=syslog. 대상 네트워크.대상 원격-fs .대상 nss-lookup.대상
[서비스]
Type=forking
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
1. 공식 웹사이트 http://dev.mysql.com/Downloads/MySQL-5.7/mysql-boost-5.7.14.tar.gz로 이동하여 Boost가 포함된 버전 5.7.14를 다운로드하세요
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.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 컴파일 및 설치
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.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 = nginx7. 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
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 환경을 성공적으로 설정했습니다.