当前位置: 首页
编程语言
CentOS PHP Web开发入门教程

CentOS PHP Web开发入门教程

热心网友 时间:2026-06-30
转载

先说几个核心判断:在 CentOS 上搭建 PHP 开发环境,整体思路非常清晰——先做好系统基础准备,接着安装 LAMP 或 LEMP 核心组件,最后优化 PHP 配置,就能顺利进入编码阶段。下面我们逐步拆解每个环节。

第一步:打好系统基础

首先将系统软件包更新到最新版本,这一步不要跳过,安全补丁和功能更新都依赖它。

sudo yum update -y

接着安装 EPEL 仓库,这是一个额外的软件包源,很多 PHP 模块和工具都从这里获取。

sudo yum install epel-release -y

第二步:安装 LAMP/LEMP 核心组件

安装 Apache Web 服务器(LAMP 路线)

Apache 作为 CentOS 生态中的经典组件,几乎是 Web 服务器的默认选择。对大多数 PHP 项目而言,它都能稳定运行。

sudo yum install httpd -y
sudo systemctl start httpd
sudo systemctl enable httpd  # 设置开机自启

验证方法很简单:在浏览器中输入 http://你的服务器IP,看到 Apache 的默认欢迎页即表示成功。

安装 MariaDB 数据库(MySQL 的替代方案)

CentOS 默认的数据库是 MariaDB,它与 MySQL 完全兼容,并且在性能上有自己的优势。

sudo yum install mariadb-server mariadb -y
sudo systemctl start mariadb
sudo systemctl enable mariadb

安装完成后,运行安全脚本,设置 root 密码、删除匿名用户、禁止远程 root 登录——这些是基本的安全操作。

sudo mysql_secure_installation

安装 PHP 及常用扩展

一次性安装 PHP 核心以及 MySQL 连接、GD 图像处理、MB 字符串处理等最常用的模块。

sudo yum install php php-mysqlnd php-gd php-mbstring php-xml php-bcmath -y

安装后记得重启 Apache 使 PHP 生效:

sudo systemctl restart httpd

如何验证 PHP 是否安装成功?在 /var/www/html 目录下创建一个 info.php 文件,写入 ,然后访问 http://你的服务器IP/info.php,看到 PHP 信息页面就说明一切正常。

第三步:调教 PHP 环境

修改 PHP 配置

PHP 的主配置文件位于 /etc/php.ini,以下几个参数值得重点关注:

  • memory_limit:脚本可用的最大内存,建议设为 256M
  • upload_max_filesize:上传文件的大小上限,根据需求设置,例如 50M
  • max_execution_time:脚本最大执行时间,设为 300 秒比较稳妥

修改完成后别忘了重启 Apache:

sudo systemctl restart httpd

配置虚拟主机(按需操作)

如果你需要在同一台服务器上托管多个网站,就需要配置虚拟主机。以 example.com 为例:

sudo vi /etc/httpd/conf.d/example.com.conf

将下面这段内容填入,记得把 example.com 替换为你自己的域名:


    ServerAdmin webmaster@example.com
    ServerName example.com
    ServerAlias www.example.com
    DocumentRoot /var/www/example.com/public_html
    ErrorLog /var/www/example.com/error.log
    CustomLog /var/www/example.com/requests.log combined
    
        AllowOverride All
        Require all granted
    

然后创建网站目录并设置权限:

sudo mkdir -p /var/www/example.com/public_html
sudo chown -R apache:apache /var/www/example.com/public_html

最后重启 Apache 使配置生效:

sudo systemctl restart httpd

第四步:编写与部署 PHP 应用

遵循 PSR 标准

PSR-1、PSR-2、PSR-4 这些编码规范并非摆设,它们能帮助你写出结构一致、易于维护的代码。几点基本要求:

  • 类名使用 StudlyCaps(例如 UserController
  • 方法名使用 camelCase(例如 getUserInfo
  • 文件扩展名统一使用 .php

用 Composer 管理依赖

Composer 是 PHP 生态中不可或缺的工具,安装第三方库全靠它。先完成安装:

curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer

然后创建 composer.json 文件声明依赖。例如要使用 Laravel:

{
    "require": {
        "lara vel/framework": "^10.0"
    }
}

最后运行安装命令:

composer install

采用 MVC 框架

Laravel、Symfony 等 MVC 框架,能够将业务逻辑清晰地拆分为模型、视图、控制器三层,代码复用性和可维护性都会显著提升。例如在 Laravel 中,在 routes/web.php 中定义 URL 与控制器映射:

use App\Http\Controllers\UserController;

Route::get('/users', [UserController::class, 'index']);

安全这根弦不能松

需要特别警惕的是,安全措施不是锦上添花,而是基本的底线。

  • 防 SQL 注入:使用预处理语句,不要拼接字符串。
    $stmt = $pdo->prepare("SELECT * FROM users WHERE email = ?");
    $stmt->execute([$email]);
    $user = $stmt->fetch();
  • 防 XSS 攻击:输出前用 htmlspecialchars 转义:
    echo htmlspecialchars($userInput, ENT_QUOTES, 'UTF-8');
  • 防 CSRF 攻击:使用 CSRF 令牌,Laravel 中可以直接用 @csrf 指令。

第五步:测试与部署

本地测试

在开发环境中测试应用功能,推荐两种方式:使用 XAMPP、WAMP 这类集成环境,或者直接用 PHP 内置服务器运行:

php -S localhost:8000

部署到生产环境

上线之前,下面这几件事一个都不能少:

  • 关闭调试模式(Laravel 中把 APP_DEBUG 设为 false
  • 配置 HTTPS,Let’s Encrypt 的免费证书足够使用
  • 设置定时备份,数据库和网站文件都要覆盖
  • 使用 Supervisor 管理 PHP 进程,尤其是队列任务
来源:https://www.yisu.com/ask/73443827.html

游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

同类文章
更多
CentOS与Golang打包常见兼容性问题探讨

CentOS与Golang打包常见兼容性问题探讨

CentOS与Golang打包的兼容性问题集中在glibc版本不匹配、交叉编译环境变量错误、依赖库缺失及Go依赖管理不规范。可通过Docker容器编译、选择兼容Go版本、正确设置GOOS GOARCH环境变量、安装对应开发包及使用GoModules解决。

时间:2026-07-01 06:54
CentOS中Fortran与Python如何协同工作从入门到实战完整教程

CentOS中Fortran与Python如何协同工作从入门到实战完整教程

在CentOS中,Fortran与Python可通过f2py、SWIG、共享库调用或subprocess协同。f2py封装Fortran为Python模块,支持数组运算;共享库需手动对齐数据类型;系统调用适合独立计算。

时间:2026-07-01 06:54
CentOS中Golang打包优化方法

CentOS中Golang打包优化方法

在CentOS中优化Golang编译打包,可显著提升编译速度并减小二进制文件体积。关键技巧包括:设置环境变量、使用Go模块管理依赖、编译时添加-ldflags= "-s-w "去除调试信息、利用UPX工具压缩、运行strip清理符号表,以及优化cgo内C代码的编译选项。综合运用这些方法能有效优化最终程序。

时间:2026-07-01 06:54
在CentOS系统中cpustat与其他工具协同使用的完整方法

在CentOS系统中cpustat与其他工具协同使用的完整方法

cpustat作为sysstat包的CPU监控工具,可通过管道与grep等命令配合过滤数据,利用脚本自动记录带时间戳的日志,或结合图形工具查看,也可格式化输出后接入Zabbix、Grafana等Web监控系统,实现可视化与告警。

时间:2026-07-01 06:54
CentOS中readdir与其他Linux发行版的差异

CentOS中readdir与其他Linux发行版的差异

CentOS基于RHEL,与Ubuntu、Debian、Fedora在包管理器(yum dnfvsapt)、默认文件系统(XFSvsext4)等存在差异,但readdir等系统调用遵循POSIX标准,行为一致。

时间:2026-07-01 06:53
热门专题
更多
刀塔传奇破解版无限钻石下载大全 刀塔传奇破解版无限钻石下载大全
洛克王国正式正版手游下载安装大全 洛克王国正式正版手游下载安装大全
思美人手游下载专区 思美人手游下载专区
好玩的阿拉德之怒游戏下载合集 好玩的阿拉德之怒游戏下载合集
不思议迷宫手游下载合集 不思议迷宫手游下载合集
百宝袋汉化组游戏最新合集 百宝袋汉化组游戏最新合集
jsk游戏合集30款游戏大全 jsk游戏合集30款游戏大全
宾果消消消原版下载大全 宾果消消消原版下载大全
  • 日榜
  • 周榜
  • 月榜