簡體   English   中英

http://localhost/undefined 404(未找到)

[英]http://localhost/undefined 404 (Not Found)

我的問題描述不清楚。 讓我再試一遍。

注意。 這是我的生產、登台和開發站點的常見問題(不僅僅是評論者似乎認為的我的開發站點)。

注意。 使用 Chrome 而不是 Firefox 會出現此問題。

問題發生在站點主頁: http : //www.example.com (或附加了“/index.php”)。 頁面加載成功,但 Chrome 開發者工具的控制台面板顯示 404 錯誤。 該消息顯示為“GET http://www.example/undefined 404 (Not Found)”。 它總是顯示錯誤發生在 "(index):1" 這是 DOCTYPE 行。 無論是什么產生了問題,都不是那樣。

頁面加載正常,我只是在開發人員工具控制台中收到這條奇怪的消息。 (我可能在最初的問題描述中並不清楚。)Firfox 的控制台沒有顯示這樣的錯誤。

我想追蹤是什么導致了這個錯誤。 特別是,我想找到 Chrome 獲取“未定義”網址的位置。 我的猜測(但只是猜測)是我的許多 Javascript 文件之一正在從未定義的變量生成 URL。 Chrome 的問題位置“(index):1”是錯誤的。 關於如何從 Chrome 中獲取更有用的錯誤消息的任何想法,我將不勝感激:找到 URL 的文件的名稱會有所幫助。 如果我能做到這一點而無需在我的所有 Javascript 文件中一一設置斷點,那將特別好。 :-)

刪除了 URL 的原始問題(我被允許的信譽 < 10 的鏈接數量受到限制)如下。 您可能不想閱讀它,因為人們已經被它弄糊塗了。

我們有相當復雜的 Drupal 網站。 轉到主頁時,Chrome(版本 45.0.2454.85 m)控制台向我顯示錯誤:“[URL 已刪除] 404(未找到)(索引):1”。 (我在本地計算機上使用開發站點,因為在那里關閉了縮小。)
好吧,我想,我知道該怎么辦了:在任何文件中找到有問題的地方,撓頭幾次,想出一個絕妙的主意,然后解決問題。 一個小困難:問題肯定不會發生在索引第 1 行(我認為這就是“(索引):1”的意思)。 錯誤消息中的“未定義”暗示但並不能證明冒犯者是我們大約十幾個 JavaScript 文件中的一個。 大概某個地方的某個變量是未定義的。 那么我如何讓 Chrome 咳出攻擊發生的位置呢? 它沒有給我任何未定義的值 JavaScript 錯誤,只是 [URL removed]/undefined 上的 404。 提前感謝您的任何想法。

編輯:我忘了補充說 Firefox 沒有顯示這樣的錯誤。

我找到了這個問題可能出現的地方。

  1. 確保所有生成的設置背景圖像等的 CSS(樣式),其中有一個 url() 實際上指向某個地方; 如果它沒有指向任何地方,錯誤將設置為 .html DOCTYPE。
  2. 檢查圖像標簽的 src; 確保它們沒有被 JavaScript 設置為 undefined。
  3. 還要檢查腳本文件的 src,即使在這種情況下發生的情況要少得多。

所以是的,它實際上並沒有指出實際錯誤在哪里,但實際上必須使用它無法找到的查找資源,這很糟糕; 我們可能甚至不希望它搜索。 例如。 當元素不可見並且我們不設置任何圖像時; 但我們仍然傳遞 undefined 它會搜索 undefined 並且它不會給你任何提示錯誤在樹的哪個部分。

由於您的頁面太復雜,無法知道它在哪里,或者這是否是您面臨的問題; 這是我能說的最多的; 我發現它太快的唯一原因是反應開發工具立即告訴我我的渲染屬性以及組件非常小的事實。

查找導致此問題的原因的另一種方法(當您有合適的解決方案時)是檢查是否有任何未定義分配給任何 html 屬性/樣式。 我們可以通過右鍵單擊 body 標簽,遞歸展開,復制 HTML,粘貼它並搜索 undefined 來檢查這一點。

如果未定義分配給 href/src/url 等,它可能會給你一個錯誤的線索。

這可以通過不將 undefined 分配給這些屬性來解決。

圖像無法正確加載 React Redux 動態圖像位置,

我得到了錯誤

Error: http://localhost/undefined 404 (Not Found)

所以我嘗試了下面的代碼它的工作

{
 user.id &&
 <img className="img-responsive" src={`${API_URL}/${imageLocation}`} />
}

因此,在呈現新數據 imagelocation api url 后獲取動態數據時。

很多時候它是固定的,用這個內容創建一個 .htaccess 文件:

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

我在Angular圖像未定義中面臨同樣的錯誤。 通過使用*ngIf問題已修復。

<div *ngIf="imageUrl"  [style.backgroundImage]="'url('+ imageUrl +')'" >"

暫無
暫無

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

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