
여러 PHP 버전으로 CentOS 서버를 설정하려고 합니다.
저는 지금까지 REMI 소프트웨어 컬렉션을 설치하여 이 작업을 수행했으며 php56
Apache php70
를 다른 버전 등으로 실행했습니다.
여태까지는 그런대로 잘됐다. php
명령줄에 입력하면 정보가 제공되지 않지만 php56 -v
예를 들어 제공됩니다. 지금까지는 예상된 동작입니다.
이제 몇 가지 질문이 있습니다. 1 - 이제 명령줄에서
사용하는 스크립트가 있는 소프트웨어에 어떤 일이 일어날지 궁금합니다 . php
작곡가 스크립트를 좋아하시나요? 분명히 스크립트가 명령줄 PHP를 실행하려고 하면 실패할 것입니다.
1a. 예를 들어 php
와 실제 사이에 심볼릭 링크를 만들어야 한다고 가정하는 것이 맞습니까 php70
?
1b. 연결해야 하는 다른 실행 파일도 있습니까? 나는 phar
연결된 곳과 다른 것들을 보았습니다. 연결해야 하는 모든 파일을 어떻게 알 수 있나요?
2 - YUM을 통해 설치하려고 하면 패키지를 phpmyadmin
다운로드해야 합니다 php 5.4
. 이 자체가 내 마음 속에 많은 질문을 제기합니다. 내 시스템 근처에는 5.4가 설치되어 있지 않기 때문에 이 경우 어떻게 해야 합니까? 그리고 위의 1a 단계를 수행하면 분명히 YUM은 여전히 PHP 종속성을 다운로드하도록 요청할 것입니다. 이를 방지하거나 php가 이미 php70으로 설치되어 있다고 YUM에 "설명"할 수 있는 방법이 있습니까? 아니면 종속성을 무시하시겠습니까?
어리석은 질문이라면 죄송합니다. 저는 Linux에 대한 경험이 제한적이며 YUM에 대한 이해가 충분하지 않습니다. 또한 여러 버전 문제에 직면한 것은 이번이 처음입니다. 감사해요!
업데이트:
나는 버전별 패키지를 설치했으며 이는 주로 Apache에 대해 여러 버전을 원했기 때문에 의도된 것임을 이해합니다. 문제는 명령줄에서 PHP를 실행하려는 다른 소프트웨어를 처리하는 방법, YUM PHP 종속성을 처리하는 방법 및 이 시나리오에 대한 일반적인 접근 방식은 무엇입니까?
답변1
알아채다: PHP 5.6과 7.0 모두 수명이 종료되었으며 다음을 갖춘 커뮤니티에서만 지원됩니다.최고의 노력; 진심으로 사용을 권장합니다지원되는 버전(7.1+).
1 - 이제 명령줄에서 PHP를 사용하는 스크립트가 있는 소프트웨어에 어떤 일이 일어날지 궁금합니다.
대부분의 스크립트는 "/usr/bin/env php"를 사용하므로 스크립트를 실행하기 전에 적절한 버전을 활성화하기만 하면 됩니다.
module load php71
php -v
composer install
1a. 예를 들어 php와 실제 php70 사이에 심볼릭 링크를 만들어야 한다고 가정하는 것이 맞습니까?
예, 작동합니다. 다음을 설치할 수도 있습니다.php56-syspaths또는php70-syspaths당신을 위해 일할 패키지
2 - YUM을 통해 phpmyadmin을 설치하려고 하면..
패키지된 애플리케이션은 기본 PHP를 사용하며 설치된 SCL을 인식하지 못합니다.
여러 버전의 경우 설치가 훨씬 더 간단합니다.
- remi-php## 저장소의 기본 버전(php-* 패키지)
- remi-safe 저장소의 대체 버전(php##-php* 패키지)
참조마법사 지침.
알아채다: EPEL 저장소의 애플리케이션(예: phpMyAdmin, GLPI, Wordpress, roundcubemail...)은 최신 PHP 버전(7+)에서 작동하지 않으므로 가능한 경우 "remi" 저장소에서도 최신 버전을 가져와야 합니다.