您无权访问此服务器上的 /。apache 服务器上的 html 应用程序错误

您无权访问此服务器上的 /。apache 服务器上的 html 应用程序错误
root@ubuntu-512mb: /var/www/html# ls
about.html  fonts                 images      self-image.html  whatnow.html
audio       frozenyogurtshop.iml  index.html  singlepost.html
css         frozenyogurtshop.psd  js          whatidid.html

这是我来自本地主机的项目。我只安装了 apache 并将我的项目放在那里。

我搜索了一些,找到了那些

root@ubuntu-512mb:/var/www/html# grep DocumentRoot /etc/apache2/sites-enabled/000-default.conf 
    DocumentRoot /var/www/html

所以我把它放到了真实的地方。

这些是权限

root@ubuntu-512mb:/var/www/html# ls -al /var/www/html
total 50920
drwx------ 8 root root     4096 Dec 24 01:04 .
drwxr-xr-x 3 root root     4096 Dec 24 00:35 ..
-rw-r--r-- 1 root root     2380 Dec 23 23:05 about.html
drwxr-xr-x 2 root root     4096 Dec 23 23:11 audio
drwx------ 2 root root     4096 Dec 23 22:20 css
drwx------ 2 root root     4096 Nov 21  2015 fonts
-rw-r--r-- 1 root root      335 Dec 23 20:25 frozenyogurtshop.iml
-rw-r--r-- 1 root root 52076522 Nov 21  2015 frozenyogurtshop.psd
drwxr-xr-x 2 root root     4096 Dec 24 00:06 .idea
drwx------ 3 root root     4096 Dec 23 21:37 images
-rw-r--r-- 1 root root     6920 Dec 23 23:00 index.html
drwx------ 2 root root     4096 Nov 21  2015 js
-rw-r--r-- 1 root root     2295 Dec 23 23:14 self-image.html
-rw-r--r-- 1 root root     2992 Dec 23 22:37 singlepost.html
-rw-r--r-- 1 root root     2111 Dec 23 23:10 whatidid.html
-rw-r--r-- 1 root root     2758 Dec 23 23:12 whatnow.html

起初它对 indexhtml 有效,但后来我将其删除了。

我应该安装其他东西吗?

答案1

不,您不应再安装任何其他东西,但应将内容的所有者更改为www-data,即运行 apache 的用户。例如,考虑文件夹js,其中所有者 ( root) 具有完全访问权限,但所有其他用户(包括www-data运行 Web 服务器的用户)均无访问权限。

这些信drwx------

第一个字符很特殊,d 表示目录。然后是三个字符的组。本例中的第一个三个字符rwx表示文件所有者拥有R伊德,西礼仪Xecute 权限。其余的是 - 表示无访问权限。

如果是的话,drwxr-xr--那就表明所有者拥有所有权限,组(例如,拥有该文件的组的成员)可以读取和执行,但不能写入,而其他人可以读取。

为了能够提供文件服务,网络服务器需要对文件具有读取权限,并且此外对文件路径下的所有目录执行权限。

要将所有权更改为 www-data,请运行命令

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

这会使 www-data 成为文件的所有者,并且您的网络服务器将能够提供这些文件。

相关内容