温馨提示×

ubuntu apache2怎么权限

小樊
47
2026-09-14 07:55:13
栏目: 智能运维

你问的“Ubuntu Apache2 怎么权限”,通常是指 Apache 能正常访问网站文件、不出现 403 Forbidden 的权限配置。下面按常见场景说明。


一、Apache 默认用户和用户组

在 Ubuntu 中,Apache2 默认运行用户是:

www-data:www-data

查看:

ps aux | grep apache2

二、网站目录推荐权限(最常用)

假设网站目录是:

/var/www/html

1️⃣ 修改目录所有者(推荐)

sudo chown -R www-data:www-data /var/www/html

2️⃣ 设置目录和文件权限

sudo find /var/www/html -type d -exec chmod 755 {} \;
sudo find /var/www/html -type f -exec chmod 644 {} \;

✅ 这是最安全、最常用的权限方案。


三、如果你用普通用户管理网站文件

如果你不想把目录全给 www-data,可以把自己加入 www-data 组:

sudo usermod -aG www-data $USER

然后:

sudo chown -R $USER:www-data /var/www/html
sudo chmod -R 775 /var/www/html

⚠️ 注意:775 仅适合开发环境,不建议生产环境。


四、上传目录(如 uploads)需要写权限

sudo chown -R www-data:www-data /var/www/html/uploads
sudo chmod -R 755 /var/www/html/uploads

如果是图片上传:

sudo chmod -R 775 /var/www/html/uploads

五、Apache 配置中的权限(很重要)

编辑站点配置:

sudo nano /etc/apache2/sites-available/000-default.conf

确保有:

<Directory /var/www/html>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

如果是 Laravel / ThinkPHP / WordPress,通常需要:

AllowOverride All

然后重启:

sudo a2enmod rewrite
sudo systemctl restart apache2

六、SELinux?Ubuntu 一般不用

Ubuntu 默认 没有 SELinux,所以不需要 chcon 之类的操作。


七、常见 403 原因速查

原因 解决
目录无执行权限 chmod 755
Apache 无访问权限 chown www-data
.htaccess 被禁 AllowOverride All
没有 index 文件 index.php/index.html

如果你能具体说一下:

  • 403 错误
  • 上传不了文件
  • 还是 Laravel / WordPress / 自建项目

我可以给你精确的一行命令方案

0