그것은 두 개의 폴더와 우분투 데비안에 가능처럼, PHP (CLI)와 PHP-FPM에 대해 별도의 php.ini 파일을 만들 수 있습니다 /etc/php/7.0/cli
와 /etc/php/7.0/fpm
?
conf.d
각 서브 시스템에 대한 디렉토리 가있는 독립 모듈을로드 할 수 있다면 멋질 것입니다.
누구든지 별도로 구성 할 수있는 아이디어가 있습니까?
또한 우분투 16.04에서 구성된 것처럼 성공하지 못한 구조를 사용하려고했습니다.
답변
내 문제를 해결하기 위해 몇 가지 조정을 찾았습니다.
먼저 : 별도의 php.ini
파일을 로드 하십시오.
arch linux forum의 사용자가 man php
페이지 에서 다음을 게시했습니다 .
FILES
php-cli.ini The configuration file for the CLI version of PHP.
php.ini The standard configuration file will only be used when php-cli.ini cannot be found.
내가 만드는 경우 /etc/php/php-cli.ini
파일 만이 파일을로드하지됩니다 /etc/php/php.ini
와 php
CLI 명령. php-fpm
여전히로드 중 /etc/php/php.ini
입니다.
둘째 : 다른 모듈 구성을로드합니다.
PHP 문서 에서 PHP_INI_SCAN_DIR
환경 변수를 찾았습니다 . 따라서 /usr/lib/systemd/system/php-fpm.service
파일을 이동 /etc/systemd/system/php-fpm.service
하고 서비스 파일에 다음 구성을 추가했습니다.
[Unit]
Description=The PHP FastCGI Process Manager
After=syslog.target network.target
[Service]
Type=notify
Environment="PHP_INI_SCAN_DIR=/etc/php/fpm/conf.d" ; <-- I have added this line
PIDFile=/run/php-fpm/php-fpm.pid
ExecStart=/usr/bin/php-fpm --nodaemonize --fpm-config /etc/php/php-fpm.conf
ExecReload=/bin/kill -USR2 $MAINPID
[Install]
WantedBy=multi-user.target
서비스를 다시 시작 / 재로드 한 후 php-fpm은에서 /etc/php/fpm/conf.d
또는 더 이상 파일을로드 하지 않습니다 /etc/php/conf.d
. 이를 통해 cli와 fpm을 개별적으로 구성 할 수 있습니다.
아마도 이것이 최선의 해결책은 아니지만 사용 사례에 적합합니다. 모두가 더 나은 솔루션을 가지고 있다면 주저하지 말고 답변을 게시하십시오!
답변
cli 버전에 대해 항상이 작업을 수행 할 수 있습니다.
php -c / 경로 /to/your/php.ini
그리고 기본값은 php-fpm을 통해 제공되는 것으로 유지하십시오. 또는 더 나은 방법으로 이것을 로그인 스크립트에 추가하십시오
# ~ / .bashrc # 별칭 및 개인 기능 # PHP 소스 개인 이니 별명 php = 'php -c /path/to/your/php.ini' # ls를 채색하다 별명 ls = 'ls --color' ...
사용중인 버전을 명시하면 더 좋을 것입니다