CentOS 6.7에서 CiviCRM 4.7/WordPress용 PHP를 업그레이드하는 방법은 무엇입니까?

CentOS 6.7에서 CiviCRM 4.7/WordPress용 PHP를 업그레이드하는 방법은 무엇입니까?

CentOS 6.7에서 PHP 5.3.3 외에 PHP를 업그레이드하는 데 사용할 수 있는 "공식" 저장소가 있습니까?

SCL 저장소를 활용하려고 하는데 다양한 기능이 이 이중 PHP 설치 방법을 가리키는 것 같습니다.

SCL 저장소를 사용하는 경우 여러 버전의 PHP가 설치되어 있습니다. 기본 패키지(이 경우 PHP 5.3.3)는 /usr/bin/php와 같은 모든 일반적인 RH 위치에 있습니다. 이제 5.4를 선택하는 SCL 버전은 php54-php로 설치되며 /opt/rh/php54/에 있습니다. 그런 다음 /etc/http/config.d/의 활성화된 PHP 구성을 통해 실행할 것을 Apache에 알려줍니다. 단, php-cli 실행 시에는 쉘의 source 명령이나 cron이나 sudo 작업의 scl 활성화 명령 등을 사용하여 php54 버전을 선언해야 합니다. 이렇게 하지 않으면 기본적으로 5.3.3이 설치됩니다.

특별한 점은 cron 작업이 올바르게 시작되도록 노력하는 것입니다. WP-CLI를 사용하면 cURL/wget/PHP 호출이 잘못된 사용자 이름/비밀번호 오류를 반환하므로 작업을 실행하는 것처럼 보이지만 스마트 그룹 재구축 등을 수행하지 않는 것 같습니다. 설정 페이지에서 cron 작업을 수동으로 실행하면 문제가 없습니다.

답변1

참고: 저는 CentOS 또는 RHEL 배포판을 직접 사용하지 않지만 (먼) 과거에는 사용했습니다.

~에 따르면https://www.softwarecollections.org/en/scls/rhscl/rh-php56/scl enable, 해당 명령이 필요한 것 같습니다 .

/opt/rh/php54PHP5.4 및 PHP5.3을 설치할 때 /usr/bin/php최신 PHP를 선택하도록 시스템 환경을 구성해야 합니다. 이는 환경 변수(예: $PATH.

CiviCRM에는 웹 서버 사용자로 실행해야 하는 작업이 예약되어 있으므로 작업이 실행되는 계정에 대해 이러한 변경이 이루어졌는지 확인해야 합니다. 이것이 CiviCRM 호스팅 전용 컴퓨터라면 모든 사용자가 선호하는 PHP를 업데이트하는 것이 합리적인 접근 방식인 것 같습니다. 다른 사용자가 변경으로 인해 부정적인 영향을 받을 수 있는 경우 변경 내용을 보다 구체적으로 지정할 수 있습니다.

실행하면 scl enable php54명령이 추가될 수 있도록 /etc/bashrc(시스템 전체) 또는 ~/.bashrc(사용자별) 이 작업이 수행됩니다.

/etc/profile/etc/profile.d및 또는 에서 시스템 경로를 구성 할 수도 있습니다 ~/.bash_profile. CentOS에 존재하는 경우 항목을 추가하여 시스템 경로를 확인할 수 있습니다 /etc/paths.d. (달릴 scl enable php54지는 잘 모르겠지만오직당신의 것을 바꾸십시오 $PATH- 그렇지 않다면 이것은 완전한 해결책이 아닐 수도 있습니다. )

이전 PHP의 전체 경로를 지정하는 것으로 시작하는 명령줄 PHP 스크립트가 있는 경우 #!/usr/bin/php선호하는 PHP 설치 경로를 사용하도록 이 스크립트를 수정해야 합니다.#!/usr/bin/env php CiviCRM의 코드 베이스에 표시된 대로. PHP5.3의 전체 경로를 지정하는 cron 항목이 있는 경우에도 동일하게 적용됩니다.

관련 정보