로컬 환경: 서버는 Alibaba Cloud ECS, 사용된 이미지는: 공개 이미지 CENTOS 7.2
1.nginx 설치
1. 버전 패키지(패키지)
wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
2. nginx yum 웨어하우스 생성(기본 yum에는 nginx가 없음)
rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm
3. nginx 다운로드 및 설치
yum install nginx
4. nginx 시작(nginx 설치 디렉터리-/usr/sbin/)
systemctl start nginx.service
ps: 기타 nginx 관련 명령:
nginx 관련 구성 파일:
기본 구성 파일은 / etc/nginx 경로 아래에서 이 구성을 사용하여 nginx를 올바르게 실행할 수 있습니다.
이를 사용자 정의해야 하는 경우 nginx.conf 및 그 아래의 기타 파일을 수정하면 됩니다.
배포 nginx를 입력하세요. 브라우저 주소 표시줄 환경에 있는 컴퓨터의 IP 모든 것이 정상이라면 다음 내용을 볼 수 있어야 합니다.
nginx에 오신 것을 환영합니다!
이 페이지가 표시되면 nginx 웹 서버가 성공적으로 설치되어 작동하는 것입니다.
온라인 문서 및 지원을 참조하세요. tonginx.org.상업지원은nginx.com에서 가능합니다.
nginx를 이용해 주셔서 감사합니다.
2단계: MYSQL 설치
1. mysql의 repo 소스 다운로드:
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
2 . mysql-community-release-el7-5.noarch.rpm 패키지
를 설치합니다. (이 패키지를 설치하면 두 개의 mysql yum 저장소 소스가 제공됩니다: /etc/yum.repos.d/mysql-community . repo, /etc/yum.repos.d/mysql-community-source.repo)
rpm -ivh mysql-community-release-el7-5.noarch.rpm
3. MYSQL 설치
sudo yum install mysql-server
4. 비밀번호 재설정
사용자 권한 변경:
sudo chown -R root:root /var/lib/mysql
서비스 다시 시작:
systemctl restart mysql.service
로그인하고 비밀번호 변경:
mysql -u root mysql > use mysql; mysql > update user set password=password(‘123456‘) where user=‘root‘; mysql > exit;
3단계: PHP 설치
1. 현재 설치된 PHP 버전을 확인합니다(yum 목록 설치됨 | grep php).
php 설치 패키지가 있는 경우 이전 버전을 먼저 삭제하고 yumremove 를 사용하여 php 관련 패키지를 제거하세요
2.rpm Php7 해당 yum 소스 설치
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
3. php7.0 설치
yum install php70w
4. php 확장 설치
-mysql.x8664 mysql Extension (php70w-pdo.x8664를 의존성으로 설치)
php70w-gd.x86_64 GD 라이브러리는 그래픽 처리를 위한 일련의 API를 제공하는 PHP용 확장 라이브러리입니다. 이미지 GD 라이브러리를 사용하여 사진을 처리하거나 생성할 수 있습니다.
php70w-ldap.x86_64 "Lightweight Directory Access Protocol"은 "디렉토리 서버"에 액세스하는 데 사용되는 프로토콜입니다.
php70w-mbstring.x86_64 mbstring 확장 라이브러리 멀티바이트 문자열을 처리하는 데 사용됩니다. PHP에 내장된 문자열 길이 함수 strlen은 중국어 문자열을 올바르게 처리할 수 없습니다. 이 함수는 문자열이 차지하는 바이트 수만 가져옵니다. GB2312 중국어 인코딩의 경우 strlen으로 얻은 값은 중국어 문자 수의 두 배인 반면, UTF-8로 인코딩된 중국어의 경우 차이는 1~3배입니다. 이 문제는 mb_strlen 함수를 사용하면 더 잘 해결할 수 있습니다.
php70w-mcrypt.x86_64 Mcrypt 확장 라이브러리는 암호화 및 암호 해독 기능을 실현할 수 있습니다. 즉, 일반 텍스트를 암호화할 수 있을 뿐만 아니라 암호 텍스트를 복원할 수도 있습니다.
5. PHP FPM 설치
yum install php70w-fpm
php-fpm 정보
PHP-FPM은 실제로 PHP 소스 코드입니다. FastCGI 프로세스 관리를 PHP 패키지에 통합하도록 설계된 패치입니다. PHP 소스 코드에 패치해야 하며, PHP를 컴파일하고 설치한 후에 사용할 수 있습니다.
이제 최신 PHP 5.3.2 소스 트리에서 PHP-FPM을 직접 통합하는 브랜치를 다운로드할 수 있습니다. 다음 버전은 PHP의 메인 브랜치에 통합될 예정이라고 합니다. Spawn-FCGI와 비교하여 PHP-FPM은 더 나은 CPU 및 메모리 제어 기능을 갖추고 있으며 전자는 쉽게 충돌하므로 crontab으로 모니터링해야 하지만 PHP-FPM에는 이러한 문제가 없습니다.
PHP5.3.3에는 php-fpm이 통합되어 있으며 더 이상 타사 패키지가 아닙니다. PHP-FPM은 더 나은 PHP 프로세스 관리 방법을 제공하고, 메모리와 프로세스를 효과적으로 제어할 수 있으며, PHP 구성을 원활하게 다시 로드할 수 있습니다. 이는spawn-fcgi보다 더 많은 장점을 가지고 있어 공식적으로 PHP에 포함됩니다. ./configure에 –enable-fpm 매개변수를 전달하여 PHP-FPM을 켤 수 있습니다.
PHP-FPM을 사용하여 PHP-CGI의 FastCGI 프로세스 제어
4단계: nginx 구성
구성 파일을 수정하기 전에 백업하는 것을 잊지 마세요
1.nginx 구성 파일 위치: (/etc/nginx/conf.d/default.conf)
웹 루트 디렉터리를 수정합니다(그렇지 않으면 수정할 필요가 없습니다). 필요하지 않으므로 기본값을 사용하세요):
root /wwwdata/html;
PHP 구문 분석을 구성하고 다음 코드에서 굵은 검정색 부분을 수정합니다.
location ~.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
2.php-fpm 구성 파일 위치: (/etc/php-fpm.d/www.conf)
수정
user =nginx
group=nginx
3. nginx 서비스 시작:
systemctl start nginx.service
부팅 시 자동 시작을 설정해야 하는 경우 다음 명령을 사용하세요.
sudo systemctl 활성화 nginx.service
시작 상태 보기:
systemctl status nginx
다음 단어가 표시되면 시작이 성공한 것입니다!
활성: 2016년 11월 19일 13:40:04 CST부터 활성(실행 중)
4. PHP-FPM 시작:
systemctl start php -fpm.service
부팅 시 자동 시작을 설정해야 하는 경우 다음 명령을 사용해 보세요:
sudo systemctl 활성화 php-fpm.service
시작 상태 확인:
systemctl status php-fpm.service
다음 단어가 표시되면 시작이 성공한 것입니다!
Active: 2016-11-19 14:14:33 CST부터 활성(실행 중)
이 시점에서 php+mysql+nginx 환경이 설정되었습니다!
마지막으로 웹 루트 디렉터리에서 다음 php 파일을 테스트해 보세요~~
데이터베이스에 보다 편리하게 접근하고 수정하려면 mysql 관리 도구인 phpMyAdmin을 설치해야 합니다
웹 루트 디렉터리로 이동: (이전 설정에 따라 자신의 웹 사이트 루트 디렉터리로 이동)
cd /wwwdata/html/
pma 설치 패키지 다운로드 :
wget https://files.phpmyadmin.net/phpMyAdmin/4.4.12/phpMyAdmin-4.4.12-all-언어s.zip
설치 패키지의 압축을 풉니다.
unzip phpMyAdmin- 4.4.12-all-언어s.zip
여기에 unzip이 없으면 먼저 unzip을 설치해야 합니다.
yum install unzip zip
설치 파일 폴더 이름 바꾸기
mv phpMyAdmin-4.4.12-all-언어s phpmyadmin
세션 저장소 디렉터리 권한 수정:
chown -R nginx.nginx /var/lib/ php/session
세션 루트 디렉터리의 위치를 수정해야 하는 경우 위치를 수정해야 합니다.
/etc/php.ini session.save_path 수정
php-fpm.d/www.conf의 /etc/ session.save_path로 인해 php.ini보다 우선순위가 높으므로 세션이 있는 경우 .save_path를 /etc/php-fpm.d/www.conf에서 수정하세요.
http://youipaddress/phpmyadin을 방문하세요. 액세스할 수 있으면 성공한 것입니다!
그만하면 된다고 생각했는데 또 로그인 문제가 발생했어요! 로그인할 수 없습니다!
일부 수정:
1. /var/lib/php/session 폴더 권한을 770 이상으로 수정
2. phpmyadmin 디렉토리 config.sample. inc $cfg'Servers'['user'] = 'root' in .php; $cfg'Servers'['password'] = '123456'; 자신이 설정한 사용자 이름과 비밀번호;