>백엔드 개발 >PHP 문제 >Linux에서 PHP 개발 환경 설정

Linux에서 PHP 개발 환경 설정

藏色散人
藏色散人원래의
2020-11-06 09:58:041752검색

Linux에서 PHP 개발 환경을 구축하는 방법: 먼저 PHP, Apache 및 MySQL 설치 패키지를 얻은 다음 구성 파일을 컴파일, 설치 및 수정한 다음 환경 변수를 설정하고 마지막으로 부팅 시 자동으로 시작합니다. 설치되었습니다.

Linux에서 PHP 개발 환경 설정

추천: "PHP 비디오 튜토리얼"

LAMP는 현재 매우 인기 있는 웹 개발 환경입니다. 많은 개발자들이 LAMP를 구축하는 과정에서 다양한 문제에 직면하게 되며, 생각만 해도 머리가 터질 것 같습니다. 오늘은 특별히 모두가 참고할 수 있도록 PHP 개발 환경을 구축하는 과정을 기록하는 시간을 가졌습니다. 문제가 발견되면 바로잡을 수 있기를 바랍니다.

1. 설치 패키지 받기

  • PHP 다운로드 주소: http://cn.php.net/distributions/php-7.1.10.tar.gz
  • Apache 다운로드 주소: http://mirrors.tuna. tsinghua .edu.cn/apache//httpd/httpd-2.4.28.tar.gz
  • MySQL 다운로드 주소: https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.19- linux -glibc2.12-x86_64.tar.gz

2. Apache 설치

1. 종속 패키지 설치

1) 컴파일러 gcc, gcc-c++

yum install -y gcc gcc-c++
설치

2) 종속성 패키지 expat-devel, zlib-devel, openssl-devel

yum install -y expat-devel zlib-devel openssl-devel
설치

2) 종속 패키지 apr

wget http://mirror.bit.edu.cn/apache//apr/apr-1.6.2.tar.gz
tar zxvf apr-1.6.2.tar.gz
cd apr-1.6.2
./configure --prefix=/usr/local/apr
make && make install
설치

3) 종속성 패키지 apr-util

wget http://mirror.bit.edu.cn/apache//apr/apr-util-1.6.0.tar.gz
tar zxvf apr-util-1.6.0.tar.gz
cd apr-util-1.6.0
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make && make install
설치

4) 종속성 패키지 pcre

wget https://ftp.pcre.org/pub/pcre/pcre-8.41.tar.gz
tar zxvf pcre-8.41.tar.gz
cd pcre-8.41
./configure --prefix=/usr/local/pcre
make && make install
설치

참고: apr 및 apr-util 설치 패키지를 Apache 설치 패키지의 srclib 디렉토리에 복사하세요.

                                  후속 버전 번호 없이 각각 apr,   apr-util로 명명됩니다.

  2. 설치 프로세스

1) 아파치의 압축을 푼다 설치 패키지

tar zxvf httpd-2.4.28.tar.gz

2)

cd httpd-2.4.28
./configure --prefix=/usr/local/server/apache \
--with-apr=/usr/local/apr \
--with-apr-util=/usr/local/apr-util \
--with-pcre=/usr/local/pcre \
--enable-so \
--enable-ssl \
--enable-deflate \
--enable-rewrite \
--enable-headers \
--enable-expires \
--disable-cgid\
--disable-cgi
make && make install
컴파일 및 설치

3. 구성 파일 httpd.conf

vim /usr/local/server/apache/conf/httpd.conf
수정

ServerName 앞의 #

을 제거하고 ServerName 뒤의 URL을 localhost:80

로 변경합니다. 4. 시스템 서비스에 httpd를 추가하고 부팅 시 자동으로 시작되도록 설정합니다

1) 시스템 서비스에 httpd를 추가합니다

으아악

2) /etc/init.d/httpd를 수정하고 3행에 다음 내용을 추가

cp /usr/local/server/apache/bin/apachectl /etc/init.d/httpd

참고: 코드의 #은 제거할 수 없습니다.

3) 부팅

# chkconfig: 345 85 15
# description: Activates/Deactivates Apache Web Server
시 자동으로 시작되도록 시스템 서비스를 설정합니다.

4) Apache 시작

systemctl enable httpd

3. MySQL 설치

1. 설치 전 준비

1) 설치 패키지 압축을 푼다

service httpd start

2) 사용자 및 사용자 그룹을 생성하고 해당 권한을 할당합니다

tar zxvf mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.19-linux-glibc2.12-x86_64 /usr/local/server/mysql

3) 종속성 설치

groupadd mysql
useradd -r -g mysql mysql -s /sbin/nologin

2. mysql 초기화 및 기본설정

1) mysql 초기화

yum -y install numactl.x86_64

2) mysql

cd /usr/local/server/mysql
bin/mysqld \
--initialize \
--user=mysql \
--basedir=/usr/local/server/mysql \
--datadir=/usr/local/server/mysql/data \
구성

이 예제는 mysql이 정상적으로 실행되는지 확인하기 위한 것입니다. 자세한 구성은 공식 문서를 참조하세요

vim my.cnf  # 创建配置文件

구성 파일을 /etc/ 디렉터리에 소프트 링크

[mysqld]
skip-grant-tables
basedir   = /usr/local/server/mysql
datadir   = /usr/local/server/mysql/data
socket    = /usr/local/server/mysql/data/mysql.sock
log-error = /usr/local/server/mysql/log/error.log
port      = 3306

[mysql_safe]
pid-file  = /var/run/mysql/mysqld.pid
log-error = /usr/local/server/mysql/log/error.log

[client]
port   = 3306
socket = /usr/local/server/mysql/data/mysql.sock

참고: 소프트 링크 생성 시 해당 파일이 존재한다는 메시지가 표시되면 /etc/my.cnf를 삭제한 후 소프트 링크를 생성할 수 있습니다

3) 데이터베이스 저장 정보에 필요한 디렉터리 및 파일을 생성합니다.

아아아아

4) 디렉터리 소유자 설정

ln -s /usr/local/server/mysql/my.cnf /etc/my.cnf

3. 환경 변수 설정 및 부팅 시 자동 시작

1) 환경 변수 설정

프로필 파일 편집

mkdir /usr/local/server/mysql/data
mkdir /usr/local/server/mysql/log
mkdir /var/run/mysql
touch /usr/local/server/mysql/log/error.log

프로필 끝에 다음 정보를 추가하세요

chown -R mysql:mysql /usr/local/server/mysql/
chown -R mysql:mysql /var/run/mysql/

환경 변수를 즉시 적용하세요

vim /etc/profile

2) 부팅 시 자동 시작 설정

export PATH=$PATH:/usr/local/server/mysql/bin

4. 방화벽 설정

CentOS에는 기본적으로 방화벽이 활성화되어 있습니다. 아래에서는 방화벽을 사용하여 3306l 포트를 엽니다.

1) 열기 전에 먼저 3306 포트가 열려 있는지 확인합니다

source /etc/profile

2) 켜져있지 않다면 방화벽을 켜주세요

cp support-files/mysql.server /etc/init.d/mysqld  
chkconfig --add mysqld
chkconfig mysqld on

3) 포트 3306

firewall-cmd --query-port=3306/tcp
을 일시적으로 열거나 영구적으로 열도록 선택할 수 있습니다.

4) 방화벽 다시 시작

systemctl start firewalld.service

5. mysql을 시작하고 루트 사용자 비밀번호 설정

1) mysql을 시작

firewall-cmd --add-port=3306/tcp  # 临时开启3306端口  
firewall-cmd --permanent --zone=public --add-port=3306/tcp  # 永久开启3306端口

2) 루트 사용자 비밀번호 설정

firewall-cmd --reload

참고 1: 비밀번호를 성공적으로 변경한 후 구성 파일의 Skip-grant-tables에서 로그아웃하세요.                                                         

참고 2: 두 번째로 비밀번호를 재설정하는 것은 시스템 요구 사항입니다. 그렇지 않으면 데이터베이스가 작동할 수 없습니다

6. 원격 액세스

1) 호스트에게 mysql에 액세스할 수 있는 권한을 부여하세요

/usr/local/server/mysql/support-files/mysql.server start  # 启动MySQL
/usr/local/server/mysql/bin/mysql -uroot -p  # 这里直接回车,无须输入密码
2) 권한 수정을 유효하게 만듭니다

use mysql;
update user set authentication_string=password('root') where user='root';
exit;

4. PHP 설치

1. 설치 단계

1) libxml-devel

set password=password('root');
종속성 패키지를 설치합니다.
2) PHP 설치 패키지의 압축을 푼다

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your password' WITH GRANT OPTION;
3)

FLUSH PRIVILEGES;
컴파일 및 설치

2. php.ini 구성

1) 구성 파일을 PHP 설치 디렉터리에 복사하세요

yum -y install libxml2-devel
2) php.ini

tar zxvf php-7.1.10.tar.gz
생성

3. httpd.conf 수정

载入PHP模块,如httpd.conf中有下列代码则直接去掉前面#即可,没有则加入

LoadModule php7_module modules/libphp7.so

在底部加入以下代码使得Apache可以解析php文件

<IfModule mod_php7.c>
	AddType application/x-httpd-php .php
</IfModule>

找到如下代码,在index.html后面加入index.php

<IfModule dir_module>
    DirectoryIndex index.html
</IfModule>

重启Apache

service httpd restart

 

    4. 测试PHP是否成功安装

创建/usr/local/server/apache/htdocs/index.php

vim /usr/local/server/apache/htdocs/index.php

在index.php中编写以下代码

<?php

   phpinfo();

?>

如果出现以下页面则安装成功

위 내용은 Linux에서 PHP 개발 환경 설정의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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