php openssl 확장 추가
composer를 사용하여 한 번에 설치laravel 프레임워크의 경우 openssl 지원을 켜지 않았음을 알려드립니다.
그다음에 php.ini에서 o를 켰어요.penssl 그래도 안되는데 phpinfo()를 실행해서 알아냈어요
openssl 확장은 아예 안 해놨어요전, php-i를 사용하여 php 컴파일 시 옵션을 확인해보니 확실히 없습니다.
추가 -- with- openssl,php를 다시 컴파일하는 것도 귀찮아서 나중에 인터넷에서 자료를 찾아보니
php를 다시 컴파일하지 않고도 추가할 수 있다확장 모듈.
다음은 이번 php에 ope를 추가한 것입니다.nssl 모듈의 메모, 이 방법이 확실히 편리하다고 생각해서 필요하다.
적어주세요
시스템 환경:
php 7.1.9
php 설치 경로:
/usr/local/php
1단계: 설치된 php 버전과 동일한 소스 패키지 찾기 (php --version을 사용하여 php 버전 보기)
만약 이전에 소스코드 패키지가 있다면, 직접 압축을 풀지 않고, 인터넷에서 같은 버전을 다운로드한 후 압축을 풀지 않는다.
명령 사용: tar-zxvf xxx.tar.gz
2단계: 압축 해제된 디렉터리에 들어가면 ext의 디렉터리가 나타납니다. 그 디렉터리에 openssl 디렉터리가 있습니다. 다음과 같습니다.그림에 나타내다
3단계: openssl 디렉토리에 들어가 다음 명령을 실행합니다
1 [root@localhost openssl]# /usr/local/php/bin/phpize //자신의 설치 환경에 따라, 자신이 이미 설치한 것을 찾는다php中的phpize
2 Cannot find config.m4. //config.m4 파일을 찾을 수 없습니다. 다음 뮤직비디오 작업을 수행합니다
3 Make sure that you run '/usr/local/php/bin/phpize' in the top level source directory of the module
4
5 [root@localhost openssl]# ls
6 config0.m4 config.w32 CREDITS openssl.c openssl.mak php_openssl.h README tests xp_ssl.c
7 [root@localhost openssl]# mv config0.m4 config.m4 //디렉터리의config0.m4이름을 직접 고치다config.m4
8 [root@localhost openssl]# /usr/local/php/bin/phpize //다시 실행
10 PHP Api Version: 20160303
11 Zend Module Api No: 20160303
12 Zend Extension Api No: 320160303
4단계: 위의 단계를 완료하면 다음 그림과 같이 openssl 디렉토리에 configure 파일이 생성됩니다
다음 명령을 실행하면 됩니다.
1 [root@localhost openssl]# ./configure --with-openssl --with-php-config=/usr/local/php/bin/php-config
2 checking for grep that handles long lines and -e... /bin/grep
3 checking for egrep... /bin/grep -E
4 checking for a sed that does not truncate output... /bin/sed
5 checking for cc... cc
6 checking for C compiler default output file name... a.out
7 ...
8 ... //여기서는 일부 실행 과정을 생략한다
9
10
11 //configure그런 다음 make가 컴파일하고 일부 코드는 다음과 같다:
12 [root@localhost openssl]# make
13 /bin/sh /usr/src/lamp/php-7.1.9/ext/openssl/libtool --mode=compile cc -I. -I/usr/src/lamp/php-7.1.9/ext/openssl -DPHP_ATOM_INC -I/usr/src/lamp/php-7.1.9/ext/openssl/include -I/usr/src/lamp/php-7.1.9/ext/openssl/main -I/usr/src/lamp/php-7.1.9/ext/openssl -I/usr/local/php/include/php -I/usr/local/php/include/php/main -I/usr/local/php/include/php/TSRM -I/usr/local/php/include/php/Zend -I/usr/local/php/include/php/ext -I/usr/local/php/include/php/ext/date/lib -DHAVE_CONFIG_H -g -O2 -c /usr/src/lamp/php-7.1.9/ext/openssl/openssl.c -o openssl.lo
14 mkdir .libs
15 cc -I. -I/usr/src/lamp/php-7.1.9/ext/openssl -DP
16 ...
17 ... //여기서는 일부 실행 과정을 생략한다
18
19 //make컴파일이 끝나면 make install 설치 과정을 수행합니다
20 [root@localhost openssl]# make install
21 Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-zts-20160303/ //生成的openssl.so文件的目录位置,视自己php环境而定
5단계: php.ini 파일 편집
vim /usr/local/php/etc/php.ini
//开启extension_dir옵션, 확장 파일 저장 디렉터리 지정
//프로필의 기본값은 다음과 같습니다.
;extension_dir='./'
//아래와 같이 켜서 설정합니다
extension_dir='/usr/local/php/etc/extension' //스스로 지정하다
아래 그림과 같이
6단계: 아래 그림과 같이 4단계에서 openssl.so 파일을 5단계에서 extension_dir로 지정한 디렉토리에 복사합니다.
7단계: php.ini 파일을 편집하고 openssl 확장을 켜고 php.ini 파일의 끝에 다음과 같은 코드를 추가합니다.
1 extension=openssl.so
저장 후 종료, APACH 다시 시작, 아래 그림과 같이 테스트 성공
'개발 꿀팁 > PHP' 카테고리의 다른 글
PHP php-fpm을 다시 시작하는 몇 가지 방법 (0) | 2022.06.30 |
---|---|
PHP는 RabbitMQ 인스턴스 사용 (0) | 2022.06.30 |
자주 사용하는 PHP 명령 실행 함수 및 활용 방식 (0) | 2022.06.30 |
PHP에서 MySQL server has gone away 문제 (0) | 2022.06.30 |
PHP+Mysql 구현 첨삭 수정 조사 (0) | 2022.06.30 |