簡體   English   中英

找不到 404 - 在 ubuntu 上使用 apache2 的網站

[英]getting 404 not found - website with apache2 on ubuntu

背景:

我已經安裝了 apache2 並嘗試設置虛擬目錄......但是當我嘗試測試不同的站點時,我不斷收到 404 錯誤消息。

我一直在關注的文章 /tutorial 位於: https : //www.digitalocean.com/community/tutorials/how-to-configure-the-apache-web-server-on-an-ubuntu-or-debian -vps

我有以下文件夾結構:

/var/www/webtest.com/test.html
/var/www/ttimes.com/test.php

在 /etc/apache2/sites-available 文件夾中,我有以下配置文件:

jmj@cp-AOA150:/etc/apache2/sites-available$ ls -lah /var/www/
total 44K
drwxr-xr-x  9 root root 4.0K Jul 28 21:37 .
drwxr-xr-x 15 root root 4.0K Jul 28 19:54 ..
drwxr-xr-x  2 root root 4.0K May 11  2013 current
drwxr-xr-x  2 root root 4.0K Apr  3 08:21 html
-rwxr-xr-x  1 root root  177 Nov 23  2013 index.html
-rwxr-xr-x  1 root root  124 Jul 28 20:14 test.php
drwxr-xr-x  5 jmj root 4.0K Jun  6 11:58 ttimes.com
drwxr-xr-x  2 jmj root 4.0K Jul 28 21:21 webtest.com

webtest.com.conf 文件如下所示:

<VirtualHost *:80>
        ServerAdmin admin@webtest.com
        ServerName webtest.com
        ServerAlias www.webtest.com
        DocumentRoot /var/www/webtest.com
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

這是我的主機文件的樣子:

127.0.0.1       localhost
127.0.1.1       cp-AOA150

這一切都只是在本地開發箱上,我希望在 /var/www 下有多個站點。 一旦網站開發完畢,我將把它們轉移到我的托管公司。 我目前沒有其他IP地址要添加,所以我跳過了添加VPS服務器IP的步驟。

我能夠成功運行

須藤 a2ensite webtest.com.conf

命令,然后我重新啟動 apache。

但是當我通過輸入http://localhost/webtest.com/test.html進入我的網站時,我收到 404 not found 錯誤。

到目前為止我已經嘗試過: - 我已經查看了這篇文章,以確保我沒有遺漏任何步驟。 - 通過訪問http://localhost.證明 apache 本身正在工作http://localhost. 當我這樣做時,我得到一個頁面,上面寫着:

Index of /
[ICO]   Name    Last modified   Size    Description
Apache/2.4.7 (Ubuntu) Server at localhost Port 80

然后我停止 apache 服務並嘗試相同的 URL。 它失敗。

您可能需要編輯/etc/apache2/apache2.conf

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

並將其更改為;

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

然后,

sudo service apache2 restart

您可能還需要執行sudo a2enmod rewrite以啟用模塊重寫。”

您已將其設置為指向 webtest.com 的虛擬主機,但您正嘗試通過 localhost/ 訪問它。 使用 VirtualHost 它不存在於該路徑中。

最簡單的方法是編輯您的 /etc/hosts 文件,為 webtest.com 創建本地 DNS 條目。 在該文件中添加一行,如下所示:

127.0.0.1     webtest.com

然后將您的瀏覽器指向 webtest.com,您應該會看到您的站點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM