[英]Wordpress issue after migration
已更改為新服務器,並遷移了許多Wordpress網站。 遷移后,我發現菜單鏈接不再起作用。 內容在那里。
我刪除了htaccess文件,並將永久鏈接更改為默認設置“普通”。 很好。 但是,現在我的網站正在使用domain.com/?page_id=29之類的菜單鏈接。
在舊服務器上,我一直使用domain.com/post_name格式。 因此,我再次刪除了htaccess文件,並將永久鏈接更改為post_name,但是單擊菜單中的鏈接始終會出現404錯誤。 檢查了phpinfo()並啟用了mod_rewrite。
htaccess文件現在是:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
當永久鏈接設置為postname時,如何找回工作菜單鏈接?
在Linux上,為了放松對文檔根目錄的訪問,應編輯以下文件:/etc/httpd/conf/httpd.conf
如果您使用的是Ubuntu,請編輯文件/etc/apache2/apache2.conf(此處有一個/ var / www的示例)
根據您想放松訪問的目錄級別,您必須更改指令
AllowOverride None
至
AllowOverride All
因此,假設您希望允許訪問/ var / www / html目錄中的文件,則應將以下幾行更改為:
<Directory "/var/www/html">
AllowOverride None
</Directory>
至
<Directory "/var/www/html">
AllowOverride All
</Directory>
為您提供參考文檔: https : //codex.wordpress.org/Using_Permalinks
當您說菜單lnks再次停止工作時,您會說鏈接已更改為http:// domain / post_name的新永久鏈接格式,對嗎?
如果是這樣,您的問題在於mod_redirect。 可以在docroot中的.htaccess中(將其打開並具有正確的重定向規則),也可以在您的apache網絡服務器配置文件中。 也許apache甚至沒有啟用mod_redirect。 如果是CPANEL服務器,則可能啟用了mod_redirect。
問題也可以是文件的路徑。 您是否使用與舊服務器相同的用戶名和相同的路徑遷移帳戶?
如果path與舊服務器不同,請對數據庫進行mysql轉儲,查找路徑並將其更改為正確的新路徑。
如果路徑相同,則可以通過重置永久鏈接來解決此問題,即首先將永久鏈接更改為當前鏈接以外的其他鏈接,然后保存,然后立即更改回較早使用的舊鏈接,然后再次保存。 過去這對我有用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.