Debain 编译安装 PHP

208次阅读
没有评论

安装依赖

apt install build-essential autoconf automake libtool libsqlite3-dev pkg-config libjpeg-dev libpng-dev libxml2-dev libbz2-dev libcurl4-gnutls-dev libssl-dev libffi-dev libwebp-dev libonig-dev libzip-dev

下载和解压

wget https://www.php.net/distributions/php-8.2.25.tar.gz &&tar -zxf php-8.2.25.tar.gz && cd php-8.2.25

生成构建文件

./configure --prefix=/usr/local/php --sysconfdir=/etc/php --enable-fpm --with-pdo-mysql --with-pcre-jit

编译和安装

make && make install

创建用户

groupadd www && useradd -g www -s /sbin/nologin www

配置文件

cp ./php.ini-development /usr/local/php/lib/php.ini
cp /etc/php/php-fpm.conf.default /etc/php/php-fpm.conf
cp /etc/php/php-fpm.d/www.conf.default /etc/php/php-fpm.d/www.conf

添加系统变量

/etc/profile 末尾添加一下内容

export PATH=$PATH:/usr/local/php/bin

生效配置

source /etc/profile

修改运行用户

修改 /etc/php/php-fpm.d/www.conf 修改 usergroup为以下内容

www

开启启动

创建这个文件 /usr/lib/systemd/system/php-fpm.service 添加一下内容

[Unit]
Description=php-fpm
After=syslog.target network.target

[Service]
Type=forking
ExecStart=/usr/local/php/sbin/php-fpm
ExecReload=/bin/kill -USR2 $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

启动服务

systemctl start php-fpm && systemctl enable php-fpm && systemctl status php-fpm

优化

opencache 在 php.ini 开启以下选项

opcache.enable=1  
opcache.enable_cli=1
opcache.memory_consumption=128 
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.validate_timestamps=0 

开启 opcache.file_cache 并设置为/tmp

jit 在 php.ini 开启以下选项

pcre.jit=1

问题解决

No input file specified.删除宝塔的 .user.ini 文件

正文完
 0
评论(没有评论)