本網站修繕小註解

因為 WordPress 一直抱怨 PHP v5.6 太老舊又不安全, 我只好破釜沉舟把網站進版. 原本只想換 PHP 就好, 但是看著一些網路教學去做, Apache 還是開不起來, 我又沒有本事 debug. 只好重新裝一個 Xampp. 這樣是能開得起來, 毛病還能一個一個修就是了.

以下紀錄比較重要的步驟, 絕對不是 copy paste 就可以搞定的. 尤其是新的 Xampp 還是用 PHP V8, 本身就跟 V7 有點小衝突.

  1. 將原來的 htdocs 底下的檔案 copy 出來. 這是為了 plugin 和 gallery 的需要. 當然 plugin 都可以重裝, 我要保存的是圖檔.
  2. 以 WordPress 控制台 –> 工具 –> 匯出程式, 將網站備份. 等效做法是從 phpmyadmin 裡面匯出 WordPress 的 sql. 要注意的是 php.ini 預設的 值很小, 我的網站已經很肥了. 所以要改成:
    post_max_size=128M
    upload_max_filesize= 256M
  3. 重新找一個 Xampp 架站, 以 phpmyadmin 開一個 WordPress 資料庫. 當然別忘了幫自己開帳號和權限. 
  4. 安裝 wordpress import 的 plugin (系統在 import 時也會提示). 
  5. 把舊的網站的 ssl key copy 到新的網站 (假設網站 URL 沒變).
  6. 把舊 plugin 和 ngg 目錄都 copy 到新網站.
  7. 安裝 ngg (gallery) 的 plugin in, 不然匯入時會報太多錯誤,
  8. 匯入舊網站的 xml.
  9. 因為新 xampp 的 PHP 是 v8.0, 要去 php.ini 把 extension=gd2 改為 gd. [1] 
  10. 到 ngg 的 plugin 去 scan gallery 目錄下的影像檔.
  11. ngg 已經不支援 shortcode 了, 也就是 slideshow=1 這種, 用新的 UI 插入 ngg 媒體. 到處冒出的 warning 就會消失.
  12. 有些文章剩下一半, 我以為是 php.ini 給的 post size 或是 upload size 太小, 或是 time out 太短? 不過更重要的是 import 文章進來後, 被主動加了一些註解. “<!–[CDATA[" 和 “]]>" 之類的. 這些要到 phpmyadmin 選 wordpress, 然後選搜尋 –> 取代. 把這些東西用空白代換掉, 隱藏的文章就會出來. 但我還沒有辦法處理消失的表格和段落間距. my_sql-620x200
  13. Zbench 這個主題有相容性問題, isHome 這個變數沒有初值, 在 functions.php 裡面, 大約 126 行的地方, 我直接 $isHome = ‘ class="current_page_item"‘;
  14. 預設字體很小, 這個要選外觀 –> 佈景主題檔案編輯器, 然後選 “系統內建的 CSS 編輯器", 把一些設定加到 “自訂項目".my-css
  15. 在 pHpMyadmin 中企圖刪除不需要的 root 帳號, 不知為何突然發生 #1034 的故障, 看了 Youtube 影片才修好. 有好幾片都是類似的. 可參考[2].
  16. 解決 #1034 後, 不再想刪 root, 而是把 phpMyadmin 裡面不需要密碼的 root 帳號都改成需要密碼, 然後我就被踢出去了. 看了[3] 才回想起進去的方法.
  17. 把phpMyAdmin 目錄底下加個 .htaccess 也可以卡住讓人無法使用 phpMyAdmin.

[note]

  1. https://lindevs.com/gd-extension-has-been-renamed-on-windows-in-php-8-0/

[2] How to Resolve error “1034 – index for Db is Corrupt in MYSQL" | Repaire MYSQL tables with xampp – YouTube

[3] 如何設定XAMPP修改phpMyAdmin的MySQL密碼 – ucamc

在 Vista 底下安裝 WordPress 的 Blog

首先, 我以這篇文章打底, 一切基於這位作者的骨架來發展.

http://www.cnblogs.com/HollisYao/archive/2008/06/05/1213248.html

1. 安裝 apache, 這部分很容易

2. 安裝 PHP, 這部分很困難, 一定要在有管理員權限的 Dos prompt 下執行:

C:\>msiexec -i php-5.2.6-win32-installer.msi

C:\>msiexec -i php-5.2.6-win32-installer.msi

原因詳見:

http://bugs.php.net/bug.php?id=42974

http://bugs.php.net/bug.php?id=43748

如果 php 安裝失敗, 打 test.php, 出來的就是這個檔案的內容. 如果成功, 就是一大串東西.

3.  安裝完 MySQL, 可以測試一下 password, 但是別忘了 user 是寫在 php.ini  裡面的那一個, 八成是 root, 不是張三李四.

4.  安裝 phpMyAdmin 相對也簡單, 最主要的功夫有兩個. 一個是加 user, 要有一個和 root 同級的 user. 它就是 mySQL 的 root.

第二點稍後再說, 就是清掉 wordpress 的 password.

5. 最後要把 wordpress copy 到 htdocs 這層底下, 再把 wordpress rename 成我們想要的名稱, 比方說 blog.

此時要記得去改 wordpress/wp-config.php, 裡面要有 username, password 等等. 另外還要一個 SSL 的 phrase, 可能是因為我 download SSL  版的 apache 的關係.過程請看:

http://codex.wordpress.org/Installing_WordPress#WordPress_Installed_for_Free

接著要執行 wp-admin/install.php 的時候問題來了, 它要我檢查 wp-config.php 裡面的 username, password  對不對? 怎麼可能不對呢? 原來我們在 install phpMyAdmin 的時候, default 是用 root 進去. 必須先登出, 改用 wp-config.php  裡面的 username, password 才行.

安裝到最後, wordpress 會安裝不完. 如果重裝, 它又會說已經好了!

此時透過 wp-admin.php 去登入. 這下好了! 無論 mySQL 的 username, password; 或是把 user 改成 phpMyAdmin 的 root 都不行. 好不容易查到 wordpress 的 FAQ, 如果我們不能登入的話, 可以 reset password.

透過 MySQL 進去 wordpress 這個 database, 選瀏覽, 然後選左邊最下面的 wp_users. 把裡面的 password 內容清掉! 抓一個 MD5 的加密器來, 把想要的 password 輸入, 就會產生的一個字串. 把這個字串用來取代剛才抹掉的 password 就可以了. 值得注意的是, user 是 admin, 不是我們所想的那一個. 因此順利登入 wordpress 後台之後, 還要新增一個我們前面提到的那個 username 當作管理員.

6. 進入 wordpress 後, 有很多地方可以當作 root 路徑. 我們可以挑一個最主要的,  然後把別的路徑都加一個 index.php, 將它們都導過來.

詳情可以參考這一篇.

http://rental.zhupiter.com/postshow_184_1_1.html

裡面提到很多方法, 我是採用這一個:

<?php
    header(“HTTP/1.1 301 Moved Permanently");
    header(“Location: http://www.new-url.com/");
?>