在 Ubuntu 上“PHP 授权”通常指几种情况,下面按最常见场景给你说明,你可以对号入座:
Ubuntu 下通常是 www-data(Apache/Nginx)
sudo chown -R www-data:www-data /var/www/html
# 目录 755
find /var/www/html -type d -exec chmod 755 {} \;
# 文件 644
find /var/www/html -type f -exec chmod 644 {} \;
chmod -R 775 /var/www/html/storage
chown -R www-data:www-data /var/www/html/storage
php -v
which php
chmod +x script.php
如果 PHP 需要执行系统命令:
sudo visudo
添加:
www-data ALL=(ALL) NOPASSWD: /usr/bin/your-command
sudo apt install php-mysql
sudo phpenmod mysql
sudo systemctl restart apache2
# 或
sudo systemctl restart php8.1-fpm
sudo chmod 644 /etc/php/8.1/apache2/php.ini
| 问题 | 原因 |
|---|---|
| 500 错误 | 权限不对 |
| 写入失败 | 目录不可写 |
| 命令无权限 | www-data 无 sudo |
如果你说的是 “PHP 软件授权 / 正版授权 / 授权码”,或者 Laravel / ThinkPHP 授权,告诉我具体场景,我可以直接给你对应方案。