Linux

Apache2 找不到新創建的頁面

  • January 21, 2020

我剛剛在 Ubuntu 上安裝了 apache 伺服器,一切順利,我可以訪問起始頁面。但是,我想創建另一個位於 /var/www/test 中的頁面。我希望能夠通過地址http://xxx.xxx.xxx.xxx/test訪問它。我已經創建了目錄,插入了 html 文件,將我的配置更改為:

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

<Directory /var/www/test>
       Options Indexes FollowSymLinks
       AllowOverride None
       Require all granted
</Directory>

但不幸的是,當我嘗試訪問此頁面時出現錯誤:未找到在此伺服器上未找到請求的 URL。

Apache/2.4.29 (Ubuntu) 伺服器

我在這裡做錯了什麼?

URL 空間和磁碟上的文件之間的對應關係由 Apache 的DocumentRoot指令決定。如果您的主文件或<VirtualHost>配置文件中有如下一行:

DocumentRoot /var/www/html

(你可能有這個設置/etc/apache2/sites-enabled/000-default.conf),那麼每當你向伺服器請求時http://example.com/path/to/file.html,你都會得到 file 的內容/var/www/html/path/to/file.html

在您的情況下,您放置了一個名為index.htmlin的文件(可能) /var/www/test,但伺服器正在搜尋/var/www/html/test/index.html.

您添加的Directory部分僅指定 的權限和其他選項/var/www/test,它不包含在伺服器的搜尋路徑中。此外,目錄選項是繼承的,因此/var/www/test目錄從那裡繼承選項/var/www(無需再次指定相同的選項)。

引用自:https://serverfault.com/questions/999784