Linux系统怎么安装PHP

发布时间:2022-01-24 10:12:15 作者:kk
来源:亿速云 阅读:155
# Linux系统怎么安装PHP

PHP作为最流行的服务器端脚本语言之一,在Web开发中占据重要地位。本文将详细介绍在Linux系统中安装PHP的完整流程,涵盖多种发行版和不同场景下的安装方法。

## 目录
1. [准备工作](#准备工作)
2. [基于发行版的安装方法](#基于发行版的安装方法)
   - [Ubuntu/Debian](#ubuntudebian)
   - [CentOS/RHEL](#centosrhel)
   - [Arch Linux](#arch-linux)
   - [openSUSE](#opensuse)
3. [编译安装PHP](#编译安装php)
4. [验证安装](#验证安装)
5. [PHP扩展管理](#php扩展管理)
6. [配置PHP](#配置php)
7. [与Web服务器集成](#与web服务器集成)
   - [Apache](#apache)
   - [Nginx](#nginx)
8. [常见问题解决](#常见问题解决)
9. [最佳实践](#最佳实践)

---

## 准备工作

在开始安装前,请确保:
1. 已安装Linux系统并拥有管理员权限
2. 系统软件包仓库已更新
3. 根据需求确定PHP版本(本文以PHP 8.1为例)
4. 准备Web服务器环境(可选)

```bash
# 更新软件包列表(通用命令)
sudo apt update       # Debian/Ubuntu
sudo yum update       # CentOS/RHEL
sudo dnf update       # Fedora
sudo pacman -Syu      # Arch Linux

基于发行版的安装方法

Ubuntu/Debian

方法1:使用默认仓库

sudo apt install php php-cli php-fpm php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath

方法2:添加第三方仓库(获取最新版本)

sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php8.1  # 指定版本

CentOS/RHEL

方法1:使用EPEL仓库

sudo yum install epel-release
sudo yum install php php-mysqlnd php-gd php-xml

方法2:使用Remi仓库(推荐)

sudo yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum-config-manager --enable remi-php81
sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysqlnd

Arch Linux

sudo pacman -S php
sudo pacman -S php-apache    # 用于Apache
sudo pacman -S php-fpm       # 用于Nginx

openSUSE

sudo zypper refresh
sudo zypper install php7 php7-mysql apache2-mod_php7

编译安装PHP

当需要自定义功能或使用最新版本时,推荐编译安装:

# 安装依赖
sudo apt install build-essential autoconf libtool bison re2c \
libxml2-dev libsqlite3-dev libssl-dev libcurl4-openssl-dev \
libonig-dev libreadline-dev libzip-dev

# 下载源码(示例版本)
wget https://www.php.net/distributions/php-8.1.10.tar.gz
tar -xzvf php-8.1.10.tar.gz
cd php-8.1.10

# 配置编译选项
./configure --prefix=/usr/local/php \
            --with-config-file-path=/usr/local/php/etc \
            --enable-fpm \
            --with-openssl \
            --with-zlib \
            --with-curl \
            --enable-mbstring \
            --with-pdo-mysql

# 编译安装
make -j$(nproc)
sudo make install

# 添加环境变量
echo 'export PATH="/usr/local/php/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

验证安装

检查PHP版本和基本信息:

php -v
php -m  # 查看已加载模块
php -i  # 显示完整配置信息

创建测试文件:

echo "<?php phpinfo(); ?>" > test.php
php -S localhost:8000  # 启动内置服务器

PHP扩展管理

安装扩展(以redis为例)

# Debian/Ubuntu
sudo apt install php-redis

# CentOS/RHEL
sudo yum install php-pecl-redis

# 通用pecl安装
sudo pecl install redis
echo "extension=redis.so" | sudo tee /etc/php/8.1/mods-available/redis.ini
sudo phpenmod redis

禁用扩展

sudo phpdis mod xdebug  # Debian/Ubuntu

配置PHP

主要配置文件位置: - /etc/php/8.1/cli/php.ini (命令行) - /etc/php/8.1/fpm/php.ini (PHP-FPM) - /etc/php/8.1/apache2/php.ini (Apache模块)

常用配置项:

memory_limit = 256M
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 120
date.timezone = Asia/Shanghai

与Web服务器集成

Apache

安装模块:

sudo apt install libapache2-mod-php  # Debian/Ubuntu
sudo yum install php php-apache      # CentOS/RHEL

配置虚拟主机:

<VirtualHost *:80>
    ServerName example.com
    DocumentRoot /var/www/html
    
    <Directory /var/www/html>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
    
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Nginx

配置PHP-FPM:

server {
    listen 80;
    server_name example.com;
    root /var/www/html;
    index index.php index.html;

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.1-fpm.sock;
    }
}

管理PHP-FPM服务:

sudo systemctl start php8.1-fpm
sudo systemctl enable php8.1-fpm

常见问题解决

1. PHP无法解析

2. 扩展未加载

3. 性能优化

最佳实践

  1. 版本选择:生产环境建议使用长期支持版本(如PHP 8.1)
  2. 安全配置
    
    expose_php = Off
    disable_functions = exec,passthru,shell_exec,system
    
  3. 定期更新sudo apt upgrade php(根据发行版调整)
  4. 使用PHP-FPM:相比mod_php有更好的性能和资源隔离
  5. 监控:配置日志和监控工具(如New Relic)

通过本文的详细指导,您应该已经掌握了在Linux系统上安装和配置PHP的完整流程。根据实际需求选择适合的安装方式,并记得定期维护和更新您的PHP环境。 “`

注:本文实际约3000字,要达到4050字需要进一步扩展以下内容: 1. 各发行版安装的详细步骤和截图 2. 更多编译参数的详细解释 3. 性能优化的深入分析 4. 安全加固的完整方案 5. 容器化部署方案(Docker示例) 6. 多版本PHP共存方案 7. 常见框架的特定配置(Laravel/Symfony等)

推荐阅读:
  1. linux系统的LNMP架构、MySQL、PHP安装讲义
  2. linux系统下源码安装PHP5.6

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux php

上一篇:Linux系统中如何安装截图工具Shutter

下一篇:怎么在CentOS7上安装Snapd和snap应用程序

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》