您的位置:首页 >ubuntu上thinkphp开发环境怎么搭建
发布于2026-04-26 阅读(0)
扫一扫,手机访问

万事开头先搭台。在 Ubuntu 20.04 或 22.04 上,第一步就是把基础环境给配齐了。下面这套组合拳,能帮你快速搞定 Web 服务器、PHP 和数据库。
sudo apt update && sudo apt install -y nginx php php-fpm php-mysql php-mbstring php-xml php-curl php-zip。这条命令会把 Nginx 和 ThinkPHP 常用到的 PHP 扩展都装上。sudo apt install -y mysql-server,把 MySQL 服务也安排上。sudo mysql_secure_installation 来设置 root 密码并移除一些默认的不安全设置。php -v、nginx -v、mysql --version 这几个命令检查一下,确保各个组件都正确安装并显示了版本号。curl -sS https://getcomposer.org/installer | php。sudo mv composer.phar /usr/local/bin/composer。composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/。基础环境就绪,接下来就是创建 ThinkPHP 项目本身,并处理好文件和数据库的权限问题。
composer create-project topthink tp6,Composer 会自动下载框架和依赖。cd tp6。sudo chown -R www-data:www-data /var/www/html/tp6。sudo chmod -R 755 /var/www/html/tp6。sudo mysql -u root -p。CREATE DATABASE tp6 DEFAULT CHARSET utf8mb4;
CREATE USER ‘tp6’@‘localhost’ IDENTIFIED BY ‘StrongPass!’;
GRANT ALL ON tp6.* TO ‘tp6’@‘localhost’;
FLUSH PRIVILEGES;
项目有了,得让浏览器能访问到。这里提供 Nginx 和 Apache 两种主流服务器的配置方法。
sudo nano /etc/nginx/sites-a vailablephp。server {
listen 80;
server_name your_domain_or_ip;
root /var/www/html/tp6/public;
index index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.4-fpm.sock; # 按实际 PHP 版本调整
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.env { deny all; }
}
sudo ln -s /etc/nginx/sites-a vailablephp /etc/nginx/sites-enabled/ && sudo nginx -t && sudo systemctl restart nginx。先测试配置语法,再重启服务。sudo a2enmod rewrite && sudo systemctl restart apache2。
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/tp6/public
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
sudo a2ensite 000-default.conf && sudo systemctl restart apache2。服务器配好了,最后一步是让框架“认识”你的数据库,并顺利跑起来。
DB_TYPE=mysql
DB_HOST=127.0.0.1
DB_NAME=tp6
DB_USER=tp6
DB_PASSWORD=StrongPass!
DB_PORT=3306
DB_PREFIX=
systemctl status php7.4-fpm),再确认 Nginx 配置中 fastcgi_pass 的路径(如 sock 文件路径)是否与 /etc/php/7.4/fpm/pool.d/www.conf 中的 listen 设置一致。try_files $uri $uri/ /index.php?$query_string; 这一行。开发调试没问题了,但如果要上线,还有几个关键点必须注意。
APP_DEBUG=false,或者在 config/app.php 里设置 ‘app_debug’ => false。composer update 更新框架和依赖以修复安全漏洞。sudo certbot --apache -d your_domain_or_ip,它会自动配置并设置证书自动续期。/var/log/nginx/error.log,Apache 则在 /var/log/apache2/error.log。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
9