0
点赞
收藏
分享

微信扫一扫

阿里云服务器ECS搭建ThinkPHP框架教程


ThinkPHP是一款遵循Apache2开源协议发布的免费、开源、快速、简单、面向对象的轻量级PHP开发框架,旨在支持敏捷Web应用开发和简化企业应用开发。本文介绍如何在Alibaba Cloud Linux 3/2、CentOS 7.x系统的ECS实例中搭建ThinkPHP 8.0框架。

前提条件

本教程适用于正在学习PHP或者已基于ThinkPHP框架进行开发的开发人员。搭建ThinkPHP框架时,已有ECS实例必须满足以下条件:

  • 实例已分配公网IP地址或绑定弹性公网IP(EIP)。
  • 操作系统必须为Alibaba Cloud Linux 3/2、CentOS 7.x。
  • 实例安全组的入方向规则已放行22、8000(ThinkPHP默认端口)、443端口。具体操作,请参见添加安全组规则。

操作步骤

  1. 安装PHP 8.0。
    说明
    ThinkPHP 8.0要求PHP版本大于等于8.0。
  1. 当ECS实例操作系统为Alibaba Cloud Linux 3时,需安装openssl10依赖包。

sudo yum install -y compat-openssl10

  1. 安装PHP。
  1. 运行以下命令,更新YUM源。

sudo rpm -Uvh https://mirrors.aliyun.com/remi/enterprise/remi-release-7.rpm

  1. 运行以下命令,启用PHP 8.0仓库。

sudo yum-config-manager --enable remi-php80

  1. 运行以下命令,安装PHP。

sudo yum install -y php php-cli php-fpm php-common php-mysqlnd php-gd php-mbstring

  1. 运行以下命令,查看PHP版本。

php -v

返回结果如下所示,表示安装成功。

PHP 8.0.30 (cli) (built: Aug  3 2023 17:13:08) ( NTS gcc x86_64 )
Copyright (c) The PHP Group
Zend Engine v4.0.30, Copyright (c) Zend Technologies

  1. 安装Composer。
    Composer是一个用于PHP项目依赖管理的工具。它允许开发人员定义和管理项目所需的外部依赖关系,并自动处理这些依赖的安装、更新和加载。更多信息,请参见Composer官网。
  1. 安装Composer所需依赖。

sudo yum install -y unzip git

  1. 安装Composer。

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

  1. 查看Composer版本。

composer --version

回显信息类似如下所示时,表示Composer已安装。

阿里云服务器ECS搭建ThinkPHP框架教程_服务器

  1. 安装ThinkPHP。
  1. 使用Composer创建一个新的ThinkPHP应用程序。
    该命令会在当前目录下创建一个名为my-thinkphp-app的目录,并下载ThinkPHP的核心文件和依赖项。

composer create-project topthink/think my-thinkphp-app

  1. 切换到新创建的ThinkPHP应用程序目录,启动ThinkPHP内置服务器进行开发。

cd my-thinkphp-app
php think run

回显信息类似如下所示时,表示ThinkPHP已启动。

阿里云服务器ECS搭建ThinkPHP框架教程_mysql_02

  1. 在本地浏览器中地址栏输入http://<ECS实例公网IP地址>:8000
    显示如下所示时,表示ThinkPHP已部署成功。
  1. 配置Web服务器(生产环境)。
    在生产环境中,您需要使用一个完整的Web服务器,如Apache或Nginx,来部署ThinkPHP应用。您需要正确配置服务器的URL重写规则以确保框架路由正常工作。
    Apache(确保开启了mod_rewrite模块)配置示例:
    Nginx配置示例:

<IfModule mod_rewrite.c>
    Options +FollowSymlinks -Indexes
    RewriteEngine On

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>

相关文档

更多ThinkPHP开发规范及目录结构说明,请参见开发规范和目录结构。

举报

相关推荐

0 条评论