成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一步步教你編譯PHP 8.3并快速啟動ThinkPHP 8.0框架項目

開發 前端
本文將介紹如何在本地編譯 PHP 8.3 并快速搭建一個 ThinkPHP 8.0 框架應用。通過這篇教程,您可以輕松掌握 PHP 8.3 的編譯和 ThinkPHP 8.0 的使用,快速構建您的 PHP Web 應用。

本文將介紹如何在本地編譯 PHP 8.3 并快速搭建一個 ThinkPHP 8.0 框架應用。通過這篇教程,您可以輕松掌握 PHP 8.3 的編譯和 ThinkPHP 8.0 的使用,快速構建您的 PHP Web 應用。

安裝PHP8.3

下載

wget https://www.php.net/distributions/php-8.3.1.tar.gz
tar -zxvf php-8.3.1.tar.gz

下載地址:https://www.php.net/downloads

安裝依賴包

sudo apt-get install libfcgi-dev libfcgi0ldbl libjpeg-turbo8-dev \
libmcrypt-dev libssl-dev libc-client2007e  \
libc-client2007e-dev libxml2-dev libbz2-dev  \
libcurl4-openssl-dev libjpeg-dev libpng-dev \
libfreetype6-dev libkrb5-dev libpq-dev \
libxml2-dev libxslt1-dev libzip-dev \
libsqlite3-dev libonig-dev pkg-config \
libxml2-dev libkrb5-dev  libssl-dev \
libbz2-dev libpng-dev  libfreetype6-dev \
libc-client2007e-dev libonig-dev \
libreadline-dev libxslt1-dev libzip-dev

如果安裝的依賴包不存在,請通過命令:apt-cache search freetype 查找相應的安裝包安裝即可

編譯

cd php-8.3.1

./configure \
--prefix=/usr/local/php-8.3.1                     \
--with-config-file-path=/usr/local/php-8.3.1/etc   \
--with-zlib-dir \
--with-freetype \
--enable-mbstring \
--enable-soap \
--enable-calendar \
--with-curl \
--with-zlib \
--enable-gd \
--disable-rpath \
--enable-inline-optimization \
--with-bz2 \
--with-zlib \
--enable-sockets \
--enable-sysvsem \
--enable-sysvshm \
--enable-pcntl \
--enable-mbregex \
--enable-exif \
--enable-bcmath \
--with-mhash \
--with-zip \
--with-pdo-mysql \
--with-mysqli \
--with-mysql-sock=/var/run/mysqld/mysqld.sock \
--with-jpeg \
--with-openssl \
--with-fpm-user=www \
--with-fpm-group=www \
--with-libdir=/lib/x86_64-linux-gnu \
--enable-ftp  \
--with-kerberos \
--with-gettext \
--with-xmlrpc \
--with-xsl \
--enable-opcache \
--enable-intl \
--with-pear \
--enable-fpm

安裝

make
make install

安裝日志

~/build/php-8.3.1$ sudo make install
[sudo] password for www: 
Installing shared extensions:     /usr/local/php-8.3.1/lib/php/extensions/no-debug-non-zts-20230831/
Installing PHP CLI binary:        /usr/local/php-8.3.1/bin/
Installing PHP CLI man page:      /usr/local/php-8.3.1/php/man/man1/
Installing PHP FPM binary:        /usr/local/php-8.3.1/sbin/
Installing PHP FPM defconfig:     /usr/local/php-8.3.1/etc/
Installing PHP FPM man page:      /usr/local/php-8.3.1/php/man/man8/
Installing PHP FPM status page:   /usr/local/php-8.3.1/php/php/fpm/
Installing phpdbg binary:         /usr/local/php-8.3.1/bin/
Installing phpdbg man page:       /usr/local/php-8.3.1/php/man/man1/
Installing PHP CGI binary:        /usr/local/php-8.3.1/bin/
Installing PHP CGI man page:      /usr/local/php-8.3.1/php/man/man1/
Installing build environment:     /usr/local/php-8.3.1/lib/php/build/
Installing header files:          /usr/local/php-8.3.1/include/php/
Installing helper programs:       /usr/local/php-8.3.1/bin/
  program: phpize
  program: php-config
Installing man pages:             /usr/local/php-8.3.1/php/man/man1/
  page: phpize.1
  page: php-config.1
Installing PEAR environment:      /usr/local/php-8.3.1/lib/php/
[PEAR] Archive_Tar    - installed: 1.4.14
[PEAR] Console_Getopt - installed: 1.4.3
[PEAR] Structures_Graph- installed: 1.1.1
[PEAR] XML_Util       - installed: 1.4.5
warning: pear/PEAR dependency package "pear/Archive_Tar" installed version 1.4.14 is not the recommended version 1.4.4
[PEAR] PEAR           - installed: 1.10.14
Wrote PEAR system config file at: /usr/local/php-8.3.1/etc/pear.conf
You may want to add: /usr/local/php-8.3.1/lib/php to your php.ini include_path
Installing PDO headers:           /usr/local/php-8.3.1/include/php/ext/pdo/

配置文件

1、通過命令php -v 查看PHP版本

/usr/local/php-8.3.1/bin/php -v
PHP 8.3.1 (cli) (built: Dec 25 2023 21:14:50) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.3.1, Copyright (c) Zend Technologies

2、核心 php.ini 配置文件

cd /home/www/build/php-8.3.1

sudo cp php.ini-production /usr/local/php-8.3.1/etc/php.ini

注意: 如果文件不存在,則阻止 Nginx 將請求發送到后端的 PHP-FPM 模塊, 以避免遭受惡意腳本注入的攻擊。定位到 cgi.fix_pathinfo 并將其修改為如下所示:

cgi.fix_pathinfo=0

3、PHP-FPM 進程服務的配置文件 php-fpm.conf

sudo mv /usr/local/php-8.3.1/etc/php-fpm.conf.default /usr/local/php-8.3.1/etc/php-fpm.conf

4、PHP-FPM 擴展配置文件 www.conf

sudo mv /usr/local/php-8.3.1/etc/php-fpm.d/www.conf.default /usr/local/php-8.3.1/etc/php-fpm.d/www.conf

用戶和用戶組配置

配置后

user = www
group = www
 
listen.owner = www
listen.group = www
listen.mode = 0660

給www用戶組分配權限(非必須)

chown www:www /opt/php-8.3.1/etc/php-fpm.d/www.conf

修改fpm監聽的端口

; listen = 127.0.0.1:9000  -- 默認是打開的,在前面加; 注釋掉
listen = /var/run/php8.3.1-fpm.sock  -- 添加這一行

創建系統單元文件

接下來,我們將創建系統單元文件,該文件用于啟動和停止PHP-FPM守護程序。

1、添加服務

vim /lib/systemd/system/php-8.3.1-fpm.service

具有以下內容:

[Unit]
Description=The PHP 8.3.1 FastCGI Process Manager
After=network.target

[Service]
Type=simple
PIDFile=/usr/local/php-8.3.1/var/run/php-fpm.pid
ExecStart=/usr/local/php-8.3.1/sbin/php-fpm --nodaemonize --fpm-config /usr/local/php-8.3.1/etc/php-fpm.conf
ExecReload=/bin/kill -USR2 $MAINPID

[Install]
WantedBy=multi-user.target

2、啟用服務并重新加載systemd

sudo systemctl enable php-8.3.1-fpm.service
Created symlink /etc/systemd/system/multi-user.target.wants/php-8.3.1-fpm.service → /lib/systemd/system/php-8.3.1-fpm.service.

sudo systemctl daemon-reload

3、啟動PHP-FPM 服務

sudo systemctl start php-8.3.1-fpm.service

4、查看PHP-FPM 服務狀態

sudo systemctl status php-8.3.1-fpm.service
● php-8.3.1-fpm.service - The PHP 8.3.1 FastCGI Process Manager
   Loaded: loaded (/lib/systemd/system/php-8.3.1-fpm.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2023-12-25 21:27:37 CST; 45s ago
 Main PID: 22472 (php-fpm)
    Tasks: 3 (limit: 4915)
   CGroup: /system.slice/php-8.3.1-fpm.service
           ├─22472 php-fpm: master process (/usr/local/php-8.3.1/etc/php-fpm.conf)
           ├─22483 php-fpm: pool www
           └─22485 php-fpm: pool www

Dec 25 21:27:37 wt-test-develop systemd[1]: Started The PHP 8.3.1 FastCGI Process Manager.

5、開機自啟動

sudo systemctl enable php-8.3.1-fpm.service

安裝ThinkPHP8.0

官方安裝文檔:https://doc.thinkphp.cn/v8_0/setup.html

注意:這里由于有多套環境,所以安裝需要指定PHP絕對路徑

安裝composer

wget https://getcomposer.org/download/latest-stable/composer.phar

查看composer -v 版本,出現以下界面表示安裝成功

/usr/local/php-8.1/bin/php composer.phar -v
   ______
  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                    /_/
Composer version 2.6.6 2023-12-08 18:32:26

使用阿里云鏡像源

/usr/local/php-8.1/bin/php composer.phar config -g repo.packagist composer https://mirrors.aliyun.com/composer/

安裝ThinkPHP8.0

/usr/local/php-8.1/bin/php composer.phar create-project topthink/think tp8.0

Creating a "topthink/think" project at "./tp8.0"
Installing topthink/think (v8.0.0)
  - Downloading topthink/think (v8.0.0)
  - Installing topthink/think (v8.0.0): Extracting archive
Created project in /home/www/build/tp8.0
Loading composer repositories with package information
Updating dependencies
Lock file operations: 14 installs, 0 updates, 0 removals
  - Locking league/flysystem (2.5.0)
  - Locking league/mime-type-detection (1.13.0)
  - Locking psr/container (2.0.2)
  - Locking psr/http-message (1.1)
  - Locking psr/log (3.0.0)
  - Locking psr/simple-cache (3.0.0)
  - Locking symfony/deprecation-contracts (v3.3.0)
  - Locking symfony/polyfill-mbstring (v1.28.0)
  - Locking symfony/var-dumper (v6.4.0)
  - Locking topthink/framework (v8.0.3)
  - Locking topthink/think-filesystem (v2.0.2)
  - Locking topthink/think-helper (v3.1.6)
  - Locking topthink/think-orm (v3.0.14)
  - Locking topthink/think-trace (v1.6)

查看安裝目錄結構

cd tp8.0

tree -L 1
.
├── app
├── composer.json
├── composer.lock
├── config
├── extend
├── LICENSE.txt
├── public
├── README.md
├── route
├── runtime
├── think
├── vendor
└── view

Nginx 主機配置

server {
    listen 80;
    server_name 121.128.128.128;
    set $root_path /home/www/build/tp8.0/public;
    root $root_path;
    location / {
        if (!-e $request_filename) {
            rewrite ^(.*)$ /index.php?s=/$1 last;
            break;
        }
    }

    location ~ \.php$ {
        try_files $fastcgi_script_name =404;
        include fastcgi_params;
        fastcgi_pass unix:/var/run/php8.3.1-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

        fastcgi_buffer_size 128k;
        fastcgi_buffers 4 256k;
        fastcgi_busy_buffers_size 256k;
        fastcgi_connect_timeout 10000;
        fastcgi_send_timeout 6000;
        fastcgi_read_timeout 6000;
    }

}

訪問該服務器公網IP,如:http://121.128.128.128 ,看到以下界面表示安裝成功啦!

查看PHP安裝信息,在public目錄新建文件tinywan.php

vim public/tinywan.php

添加以下內容,從 PHP 獲取系統信息

<?php
  
phpinfo();

訪問該服務器公網IP,如 http://121.128.128.128/tinywan.php,查看安裝信息

圖片圖片

責任編輯:武曉燕 來源: 開源技術小棧
相關推薦

2017-01-06 15:13:25

LinuxVim源代碼

2018-06-11 15:30:12

2017-12-25 11:50:57

LinuxArch Linux

2017-01-19 21:08:33

iOS路由構建

2011-05-19 10:39:12

2019-03-05 14:09:27

Docker存儲容器

2019-07-09 15:23:22

Docker存儲驅動

2018-12-24 10:04:06

Docker存儲驅動

2010-08-10 11:31:36

路由器配置NAT

2009-04-15 09:29:07

2010-08-12 10:02:16

路由器NAT

2009-08-14 11:35:01

Scala Actor

2010-03-04 16:28:17

Android核心代碼

2016-11-02 18:54:01

javascript

2010-04-07 13:05:57

2024-11-18 17:12:18

C#編程.NET

2011-09-05 12:36:08

路由器限速linux路由器

2011-05-10 10:28:55

2024-08-30 08:30:29

CPU操作系統寄存器

2024-09-30 09:56:59

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 一区亚洲| 精品国产三级 | 亚洲综合色视频在线观看 | 国产精品视屏 | 中文字幕一区二区三区不卡在线 | 国产 日韩 欧美 在线 | 日韩精品一区二区三区中文在线 | 国产成人精品视频在线观看 | 能看的av | 91在线免费视频 | 国产欧美一区二区三区国产幕精品 | 国产亚洲日本精品 | 91 中文字幕| 可以在线看的黄色网址 | 在线亚洲电影 | 黄a在线播放 | 久草新在线 | 久久91精品国产 | 亚洲国产aⅴ成人精品无吗 综合国产在线 | 99精品国产一区二区三区 | www国产亚洲精品久久网站 | 成人在线免费看 | 国产日日操 | 三级欧美| 欧美在线精品一区 | 国产日韩久久久久69影院 | 亚洲黄色视屏 | 最新日韩在线 | 毛片一级片 | 操操日| 性高湖久久久久久久久 | 精精精精xxxx免费视频 | 成人一区在线观看 | 久久精品国产99国产精品 | 欧洲一区二区三区 | 久久久久久综合 | 2020国产在线 | 天天拍夜夜爽 | 国产在线二区 | 国产丝袜一区二区三区免费视频 | 国产高清无av久久 |