簡體   English   中英

如何在Wordpress網站頁面上解決此404錯誤?

[英]How do I fix this 404 error on a Wordpress site page?

我正在嘗試解決客戶的Wordpress網站的問題,該網站在查看他們的頁面之一時會轉到404錯誤頁面。 有問題的URL是https://wpdev.jove.com/editorial-board-new

我已經嘗試過以下解決方案:

  1. 將永久鏈接更改為普通
  2. 檢查.htacess
  3. 創建一個新頁面(無內容)。 查看新的空白頁時,仍然會出現404錯誤。

這就是.htacess的當前部分。 我相信這是造成404錯誤的部分:

RewriteCond %{HTTP_HOST} ^([a-z\d-]+\.)?jove\.com$
RewriteCond %{REQUEST_URI} !^/wp/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^/((methods-collections)/(industry- 
overview|test|industry-license-content|industry-create- 
content|corporate-overview|corporate-licensing|corporate- 
info|corporate-info-science-education|about|publish-in-a- 
collection|be-a-guest-editor|editorial-manager-guide-for-guest- 
editors|case-studies)|film-your-research(-2017)?|wp- 
login\.php|recommend$|recommend-jove-to-your-librarian|trial/? 
$|about|corporate|industry(?!/search)|home|in-the-laboratory|in-the- 
classroom(-2)?|blog|librarians|publish|research-partnerships|wp- 
content|wp-includes|feed|comments/feed|policies$|wp-admin|wp-json)
RewriteRule ^(.*)$ /wp/$1
RewriteCond %{HTTP_HOST} ^(new.)?jove.com$
RewriteRule ^(/)?$ wp/index.php [L]

如何在此頁面上修復此404錯誤?

嘗試將這行RewriteCond %{HTTP_HOST} ^(new.)?jove.com$更改為RewriteCond %{HTTP_HOST} ^(new.|wpdev.)?jove.com$


下面是您的.htaccess文件如何工作的說明

第一行驗證域中僅包含有效字符。 我真的不知道為什么他們認為這是必要的,但是可以。

RewriteCond %{HTTP_HOST} ^([a-z\d-]+\.)?jove\.com$

下一個鏈接檢查我們是否還不在/wp/文件夾中。 如果是這樣,那么我們就不需要在此.htaccess文件中做任何其他事情,因為/wp/.htaccess文件將在/wp/.htaccess運行。

RewriteCond %{REQUEST_URI} !^/wp/

接下來的2行將檢查是否不存在文件或目錄。 因此,在您的情況下,我們將檢查是否尚無editorial-board-new 如果確實如此,我們將只加載該文件,而不是加載WordPress。

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

然后,我們有了這個超長正則表達式,如果有任何匹配項,它將把請求發送到/wp/子文件夾。 您可以使用regexr.com之類的網站檢查正則表達式,以獲取有關正則表達式各部分功能的更多信息。

RewriteCond %{REQUEST_URI} ^/((methods-collections)/(industry- 
overview|test|industry-license-content|industry-create- 
content|corporate-overview|corporate-licensing|corporate- 
info|corporate-info-science-education|about|publish-in-a- 
collection|be-a-guest-editor|editorial-manager-guide-for-guest- 
editors|case-studies)|film-your-research(-2017)?|wp- 
login\.php|recommend$|recommend-jove-to-your-librarian|trial/? 
$|about|corporate|industry(?!/search)|home|in-the-laboratory|in-the- 
classroom(-2)?|blog|librarians|publish|research-partnerships|wp- 
content|wp-includes|feed|comments/feed|policies$|wp-admin|wp-json)

現在,如果上述所有重寫條件都為true,我們將重定向到同一文件,但位於/wp/文件夾中。

RewriteRule ^(.*)$ /wp/$1

否則,如果請求的URL使用域jove.comnew.jove.com

RewriteCond %{HTTP_HOST} ^(new.)?jove.com$

然后,我們重定向到/wp/index.php (加載WordPress)

RewriteRule ^(/)?$ wp/index.php [L]

暫無
暫無

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

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