Class 'ZipArchive' not found 에러 발생! 도와주세요~~~
페이지 정보
본문
AAI 1.5.6으로 설치하였습니다.
엑셀 업로드 후 분석하려는데,
" Error loading file "20220127093532160305.xlsx": ZipArchive library is not enabled "
이런 에러가 발생하네요...
좀 더 조사해보니,
PHPExcel에서 에러가 나고 있군요.
// Check if zip class existsif (!class_exists('ZipArchive',FALSE)) {throw new PHPExcel_Reader_Exception("ZipArchive library is not enabled");}
엑셀로 업로드 한 파일을 저 클래스가 읽어야 하는데, 클래스를 못찾고 있는 버그인듯 합니다.
에러로그...
/var/log/httpd/error_log <-- 여긴 별 내용 없고...
/var/log/httpd/******-error_log <-- 여기를 보면...
[Thu Jan 27 09:55:28.934478 2022] [:error] [pid 216599:tid 140243617404672] [client 121.139.158.55:53253] [client 121.139.158.55] ModSecurity: Warning. Pattern match "([\\\\~\\\\!\\\\@\\\\#\\\\$\\\\%\\\\^\\\\&\\\\*\\\\(\\\\)\\\\-\\\\+\\\\=\\\\{\\\\}\\\\[\\\\]\\\\|\\\\:\\\\;\\"\\\\'\\\\\\xc2\\xb4\\\\\\xe2\\x80\\x99\\\\\\xe2\\x80\\x98\\\\`\\\\<\\\\>].*?){4,}" at ARGS_NAMES:order[0][dir]. [file "/etc/httpd/modsecurity.d/activated_rules/modsecurity_crs_41_sql_injection_attacks.conf"] [line "159"] [id "981173"] [rev "2"] [msg "Restricted SQL Character Anomaly Detection Alert - Total # of special characters exceeded"] [data "Matched Data: ] found within ARGS_NAMES:order[0][dir]: order[0][dir]"] [ver "OWASP_CRS/2.2.9"] [maturity "9"] [accuracy "8"] [tag "OWASP_CRS/WEB_ATTACK/SQL_INJECTION"] [hostname "my-domain"] [uri "/InputList.php"] [unique_id "YfHtgEpbYZ6tfERzHdXWMwAAAM4"], referer: http://my-domain/Input.php
[Thu Jan 27 09:55:28.980463 2022] [:error] [pid 216599:tid 140243617404672] [client 121.139.158.55:53253] [client 121.139.158.55] ModSecurity: Warning. Operator GE matched 5 at TX:inbound_anomaly_score. [file "/etc/httpd/modsecurity.d/activated_rules/modsecurity_crs_60_correlation.conf"] [line "37"] [id "981204"] [msg "Inbound Anomaly Score Exceeded (Total Inbound Score: 240, SQLi=80, XSS=0): Restricted SQL Character Anomaly Detection Alert - Total # of special characters exceeded"] [hostname "my-domain"] [uri "/InputList.php"] [unique_id "YfHtgEpbYZ6tfERzHdXWMwAAAM4"], referer: http://my-domain/Input.php
Mod SEcurity에서 에러를 발생시키는 것 같은데...
에고 해결책을... ㅠㅠ
흠냐... 상용 서비스 중인데...
zip 라이브러리가 설치는 된 것 같은데,
phpinfo를 보면 정확하게 zip 라이브러리가 보이진 않네요. bZip만 보임...
댓글목록
아파치님의 댓글
아파치 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 아이피 (68.♡.♡.58) 작성일
AAI 는 기본적으로 ZIP모듈이 설치 되지 않아서 해당 문제가 발생하는것 같습니다.
아래 구문을 복사하셔서 ZIP 모듈을 설치하시면 해결 될 것으로 생각 됩니다.
[code]
yum install -y php54-php-pecl-zip php55-php-pecl-zip php56-php-pecl-zip php70-php-pecl-zip php71-php-pecl-zip php72-php-pecl-zip php73-php-pecl-zip php74-php-pecl-zip php80-php-pecl-zip
[/code]
그리고 /etc/php.d/40-zip.ini 가 생성되었는지 확인하시고 없다면 아래 구문으로 생성해 주시면 됩니다.
[code]
echo "extension=zip.so" >> /etc/php.d/40-zip.ini
[/code]
작업이 모두 끝났으면 AAI 내의 restart.sh 를 한번 실행해 주시고 php -m 을 입력하여 zip모듈이 활성화 되었는지 확인하신 후
아래와 같이 phpinfo.php에 zip 모듈이 보이는지 확인 하시면 됩니다.
해피탱크님의 댓글의 댓글
해피탱크 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 아이피 (175.♡.♡.125) 작성일
위와 같이 해도 안되는데...
각각의 PHP 버전에 맞는 extension_dir을 어딘가 넣어주어야 하는거 아닌지...
얘네들이요.
[root@qs211-0149 /]# find . -name "zip.so"
./opt/remi/php54/root/usr/lib64/php/modules/zip.so
./opt/remi/php55/root/usr/lib64/php/modules/zip.so
./opt/remi/php56/root/usr/lib64/php/modules/zip.so
./opt/remi/php70/root/usr/lib64/php/modules/zip.so
./opt/remi/php71/root/usr/lib64/php/modules/zip.so
./opt/remi/php72/root/usr/lib64/php/modules/zip.so
./opt/remi/php73/root/usr/lib64/php/modules/zip.so
./opt/remi/php74/root/usr/lib64/php/modules/zip.so
./opt/remi/php80/root/usr/lib64/php/modules/zip.so
어디에 넣어야 할까요?? extension_dir...
해피탱크님의 댓글
해피탱크 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 아이피 (175.♡.♡.125) 작성일
음...
[root@***** /opt/remi/php56/root/etc]# ls
opt pear.conf php-fpm.conf php.ini pki skel X11 xinetd.d
pear php.d php-fpm.d php.ini.original pm sysconfig xdg
[root@***** /etc/opt/remi/php56]# ls
opt pear.conf php-fpm.conf php.ini pki skel X11 xinetd.d
pear php.d php-fpm.d php.ini.original pm sysconfig xdg
php56 관련한 디렉토리가 두 군데 있네요...
어떤게 진짜일까요???
해피탱크님의 댓글
해피탱크 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 아이피 (175.♡.♡.125) 작성일
음... "/opt/remi/php56/root/etc/php-fpm.conf" 가 진짜인거같아요.
[root@***** ~/AAI]# systemctl | grep php56-php-fpm
php56-php-fpm.service loaded active running The PHP FastCGI Process Manager
[root@qs211-0149 ~/AAI]# systemctl status php56-php-fpm
● php56-php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php56-php-fpm.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2022-01-27 12:32:05 KST; 8min ago
Main PID: 59022 (php-fpm)
Status: "Processes active: 0, idle: 0, Requests: 2, slow: 0, Traffic: 0req/sec"
CGroup: /system.slice/php56-php-fpm.service
└─59022 php-fpm: master process (/opt/remi/php56/root/etc/php-fpm.conf)
Jan 27 12:32:05 qs211-0149.cafe24.com systemd[1]: Starting The PHP FastCGI Process Manager...
Jan 27 12:32:05 qs211-0149.cafe24.com systemd[1]: Started The PHP FastCGI Process Manager.
해피탱크님의 댓글
해피탱크 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 아이피 (175.♡.♡.125) 작성일
아... 안나옵니다....
[root@qs211-0149 /]# php -m
[PHP Modules]
bz2
calendar
Core
ctype
curl
date
exif
fileinfo
filter
ftp
gettext
hash
iconv
json
libxml
memcache
openssl
pcntl
pcre
Phar
readline
Reflection
session
sockets
SPL
standard
tokenizer
zlib
[Zend Modules]
해피탱크님의 댓글
해피탱크 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 아이피 (175.♡.♡.125) 작성일
https://sir.kr/qa/193648
https://xetown.com/questions/1248960
설치는 되었으나... 무언가 안맞아서 안된다는 소리 같고...
올바른 길이 저기쯤부터 시작 되는것 같으나 저기쯤까지 가는 방법을 모르겠네요. 흠냐...
어렵다 어려워...
해피탱크님의 댓글
해피탱크 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 아이피 (175.♡.♡.125) 작성일
일단 아파치님 말씀대로 삭제 후 제 설치 해보았어요.
yum remove php80-php-pecl-zip.x86_64 <-- 54부터 80까지... 실행...
yum install -y php54-php-pecl-zip php55-php-pecl-zip php56-php-pecl-zip php70-php-pecl-zip php71-php-pecl-zip php72-php-pecl-zip php73-php-pecl-zip php74-php-pecl-zip php80-php-pecl-zip <-- 다시 설치
...
Installed:
php54-php-pecl-zip.x86_64 0:1.20.0-1.el7.remi php55-php-pecl-zip.x86_64 0:1.20.0-1.el7.remi
php56-php-pecl-zip.x86_64 0:1.20.0-1.el7.remi php70-php-pecl-zip.x86_64 0:1.20.0-1.el7.remi
php71-php-pecl-zip.x86_64 0:1.20.0-1.el7.remi php72-php-pecl-zip.x86_64 0:1.20.0-1.el7.remi
php73-php-pecl-zip.x86_64 0:1.20.0-1.el7.remi php74-php-pecl-zip.x86_64 0:1.20.0-1.el7.remi
php80-php-pecl-zip.x86_64 0:1.20.0-1.el7.remi
Dependency Installed:
php55-php-common.x86_64 0:5.5.38-12.el7.remi php55-php-pecl-jsonc.x86_64 0:1.3.10-1.el7.remi
php56-php-common.x86_64 0:5.6.40-32.el7.remi php56-php-pecl-jsonc.x86_64 0:1.3.10-1.el7.remi
Complete! <--- 설치 완료...
헉... 갑자기... ㅠㅠ
[root@***** ~/AAI]# ls
adduser.sh chkrootkit conf.d install.sh my.cnf.d php_errors.log restart.sh
APM clamav.sh deluser.sh letsencrypt php README.md
[root@***** ~/AAI]# ./restart.sh
Failed to restart php55-php-fpm.service: Unit not found.
Failed to restart php56-php-fpm.service: Unit not found.
[root@qs211-0149 ~/AAI]#
이런게 나타나는군요 ㅠㅠ 뭐지.. 뭘까... 흑흑....
해피탱크님의 댓글
해피탱크 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 아이피 (175.♡.♡.125) 작성일
그까이꺼...
54 파일 참고하여 두개 만들어 주고...
[root@]# vi /usr/lib/systemd/system/php54-php-fpm.service
[root@]# vi /usr/lib/systemd/system/php55-php-fpm.service
[root@]# vi /usr/lib/systemd/system/php56-php-fpm.service
재시작했더니...
[root@ ~/AAI]# ./restart.sh
Job for php55-php-fpm.service failed because a configured resource limit was exceeded. See "systemctl status php55-php-fpm.service" and "journalctl -xe" for details.
Job for php56-php-fpm.service failed because a configured resource limit was exceeded. See "systemctl status php56-php-fpm.service" and "journalctl -xe" for details.
흠냐... 56으로 돌아가는 서비스는 죽어 있고... ㅠㅠ
해피탱크님의 댓글
해피탱크 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 아이피 (175.♡.♡.125) 작성일
AAI의 APM Installer 쉘을 참고 하여 다시 인스톨 하고 있는데...
yum -y install php55 php55-php-cli php55-php-fpm \
php55-php-common php55-php-pdo php55-php-mysqlnd php55-php-mbstring php55-php-mcrypt \
php55-php-opcache php55-php-xml php55-php-pecl-imagick php55-php-gd php55-php-fileinfo \
php55-php-pecl-ssh2 php55-php-soap php55-php-devel php55-php-imap \
php55-php-json php55-php-ldap php55-php-xml php55-php-iconv php55-php-xmlrpc php55-php-snmp \
php55-php-pecl-apcu php55-php-pecl-geoip php55-php-pecl-memcached php55-php-pecl-redis \
php55-php-pecl-xdebug php55-php-pecl-mailparse php55-php-pgsql php55-php-process php55-php-ioncube-loader
yum -y install php56 php56-php-cli php56-php-fpm \
php56-php-common php56-php-pdo php56-php-mysqlnd php56-php-mbstring php56-php-mcrypt \
php56-php-opcache php56-php-xml php56-php-pecl-imagick php56-php-gd php56-php-fileinfo \
php56-php-pecl-ssh2 php56-php-soap php56-php-devel php56-php-imap php56-php-json php56-php-mysql \
php56-php-ldap php56-php-xml php56-php-iconv php56-php-xmlrpc php56-php-snmp php56-php-pgsql \
php56-php-pecl-apcu php56-php-pecl-geoip php56-php-pecl-memcached php56-php-pecl-redis \
php56-php-pecl-xdebug php56-php-pecl-mailparse php56-php-process php56-php-ioncube-loader
잘하고 있는건지...
으하하하하하 미치겠어요~~~
해피탱크님의 댓글
해피탱크 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 아이피 (175.♡.♡.125) 작성일
위와 같이 하였더니...
위 작업 전에 지워버렸던 /usr/lib/systemd/system/php55-php-fpm.service 와 /usr/lib/systemd/system/php56-php-fpm.service 이 다시 생겼네요.
그러나 여전히 56은 재시작이 안됩니다. 나 여기서 뭐하는거죠? 흠냐...
[root@0149 ~/AAI]# ./restart.sh
Job for php56-php-fpm.service failed because the control process exited with error code. See "systemctl status php56-php-fpm.service" and "journalctl -xe" for details.
[root@qs211-0149 ~/AAI]# systemctl status php56-php-fpm.service -l
● php56-php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php56-php-fpm.service; disabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Thu 2022-01-27 14:15:04 KST; 3min 8s ago
Process: 70106 ExecStart=/opt/remi/php56/root/usr/sbin/php-fpm --nodaemonize (code=exited, status=78)
Main PID: 70106 (code=exited, status=78)
Jan 27 14:15:03 qs211-0149.cafe24.com systemd[1]: Starting The PHP FastCGI Process Manager...
Jan 27 14:15:03 qs211-0149.cafe24.com php-fpm[70106]: [27-Jan-2022 14:15:03] NOTICE: PHP message: PHP Warning: PHP Startup: Unable to load dynamic library '/opt/remi/php56/root/usr/lib64/php/modules/zip.so' - /opt/remi/php56/root/usr/lib64/php/modules/zip.so: undefined symbol: zip_register_cancel_callback_with_state in Unknown on line 0
Jan 27 14:15:04 qs211-0149.cafe24.com php-fpm[70106]: [27-Jan-2022 14:15:04] ERROR: unable to bind listening socket for address '127.0.0.1:9000': Address already in use (98)
Jan 27 14:15:04 qs211-0149.cafe24.com php-fpm[70106]: [27-Jan-2022 14:15:04] ERROR: FPM initialization failed
Jan 27 14:15:04 qs211-0149.cafe24.com systemd[1]: php56-php-fpm.service: main process exited, code=exited, status=78/n/a
Jan 27 14:15:04 qs211-0149.cafe24.com systemd[1]: Failed to start The PHP FastCGI Process Manager.
Jan 27 14:15:04 qs211-0149.cafe24.com systemd[1]: Unit php56-php-fpm.service entered failed state.
Jan 27 14:15:04 qs211-0149.cafe24.com systemd[1]: php56-php-fpm.service failed.
해피탱크님의 댓글
해피탱크 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 아이피 (175.♡.♡.125) 작성일
APMinstaller.sh를 참고하여 php-fpm들은 다시 살렸습니다만...
여전히 zip 관련 에러는 발생하네요... 설치를 해도 안되고... 지워버리면 55버전과 56버전이 통째로 날라가버리니...
[root@qs211-0149 ~/AAI/APM]# systemctl status php56-php-fpm -l
● php56-php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php56-php-fpm.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2022-01-27 17:45:05 KST; 34min ago
Main PID: 92492 (php-fpm)
Status: "Processes active: 0, idle: 6, Requests: 33, slow: 0, Traffic: 0req/sec"
CGroup: /system.slice/php56-php-fpm.service
├─92492 php-fpm: master process (/opt/remi/php56/root/etc/php-fpm.conf
├─92493 php-fpm: pool www
├─92494 php-fpm: pool www
├─92495 php-fpm: pool www
├─92496 php-fpm: pool www
├─92497 php-fpm: pool www
└─92737 php-fpm: pool www
Jan 27 17:45:05 qs211-0149.cafe24.com systemd[1]: Starting The PHP FastCGI Process Manager...
Jan 27 17:45:05 qs211-0149.cafe24.com php-fpm[92492]: [27-Jan-2022 17:45:05] NOTICE: PHP message: PHP Warning: PHP Startup: Unable to load dynamic library '/opt/remi/php56/root/usr/lib64/php/modules/zip.so' - /opt/remi/php56/root/usr/lib64/php/modules/zip.so: undefined symbol: zip_register_cancel_callback_with_state in Unknown on line 0
Jan 27 17:45:05 qs211-0149.cafe24.com systemd[1]: Started The PHP FastCGI Process Manager.
"NOTICE: PHP message: PHP Warning: PHP Startup: Unable to load dynamic library '/opt/remi/php56/root/usr/lib64/php/modules/zip.so' - /opt/remi/php56/root/usr/lib64/php/modules/zip.so: undefined symbol: "
요것이 zip 모듈이 정상적으로 안되는 이유인것으로 판단되나...
검색을 해도 답이 없네요.. 에휴...
해피탱크님의 댓글
해피탱크 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 아이피 (175.♡.♡.125) 작성일
결국 php-zip을 활성화하는데 실패했습니다.
새롭게 셋팅했던 서버에서 2일 사용했네요. 흠냐.
절반은 zip이 필요 없으니, 걍 두고
나머지 절반은 다시 백업해서, 구 서버로 옮기고 있어요. ㅎㅎㅎ
새 서버 한 달 더 임대해서 한번 더 시도해보든지... (한 3일만 빌리는건 안되나... ㅎ)
걍 두 개 쓰든지 해야 할 듯요...
도움 주신 웹지기님 감사해요~
카페24보다 더 저렴하고 괜찮은 성능의 퀵호스팅은 뭐가 있을지 궁금하네요.
월 십마넌... 적지 않게 부담이 되네요 흠냐..