前言
第一篇文章就來記錄一下架站的過程吧,先說明這篇文章不會是手把手的教學文,這種文章應該夠多了,只是記錄一下中間遇到的問題。 原本決定要架blog時是打算要找個Django的framwork(Django packages)來用,因為wordpress每年的CVE真的太多了XDD,但後來看來看去還是跑回來用wordpress,主要考量是懶的寫前端,畢竟wp的使用者應該還是多很多,template應該比較好找到適合的,CVE什麼的,出現再修就好XD。
安裝wordpress
跟著官網的文件應該非常容易就可以完成安裝,中間的障礙只有忘記mariadb的root密碼,但跟著教學也是快速解決。
Reset the MariaDB Root Password
$ sudo systemctl stop mariadb $ sudo mysqld_safe --skip-grant-tables & $ mysql -u root MariaDB> use mysql; MariaDB> update user SET PASSWORD=PASSWORD("mynewpassword") WHERE USER='root'; MariaDB> flush privileges; MariaDB> exit $ sudo systemctl start mariadb
2019/03/31 update. using mysql
# before mysqld_safe ~ sudo mkdir -p /var/run/mysqld ~ sudo cown mysql:mysql /var/run/mysqld # change password mysql> update user set authentication_string=PASSWORD("mynewpassword") where User='root';
設定wordpress
這個部分弄最久的應該就是server裡的權限,雖然沒有什麼困難的內容,只是有些東西之前沒有注意到。 最一開始發現的問題是沒有辦法上傳檔案,查了一下應該就是檔案目錄權限的問題,可是一直沒看到問題在哪裡,索性直接把wp-content
目錄改成777,然後就成功了,接下來改回來755還是可以上傳就沒管他了。 但接下來發現要更新plugins時,wordpress都跟我說要FTP才能使用,雖然覺得有點莫名,但我還是不疑有他跑去架ftp server。
vsftpd
一開始當然先找鳥哥大大的教學看要用什麼ftp server,但後來發現裡面的東西有點老了,都還沒開始用systemctl
,就又另外找了教學文、教學文2,東弄西弄,把Firewall、SSL Certificate、TLS、Passive mod(pasv_address都弄好了(這個部分以後還是直接man vsftpd.conf
比較快…)
但我弄完ftp後還是不知道怎麼在wordpress上面使用,在那個頁面輸入帳號密碼之後,他就卡住了,可能我沒有很仔細去看他的文件吧(其實後來我在查看權限的時候發現wp有用我給的那個ftp user在wp-content
裡面創了一個upgrade
folder,也不知道他怎麼找到目錄在哪裡的…),但我google的時候突然發現有人寫到wp會要求ftp也是因為權限沒有設定好的關係,跑去/etc/php-fpm.d/www.conf
一看,發現user = apache, group = apache
阿Orz,趕快把apache改回nginx就好了。
404 after change permalink settings
正式開始用wordpress後我就發現他預設的網址長的好醜,連about page都是?p=6
之類的東西,在設定翻找一下,馬上就發現有permalink的設定,開心地改完之後就發現除了Home page都404了XDDDD。 還好網路上已經有前輩遇過這個問題了 簡單來說就是在nginx的conf裡面加上rewrite的設定(把下面這段放在location ~.php$ {
前)
location / { try_files $uri $uri/ /index.php?$args; } # Add trailing slash to */wp-admin requests. rewrite /wp-admin$ $scheme://$host$uri/ permanent;
tips
主文的部分大概結束了,這邊放一些有用到的command,畢竟我的記憶力真的很爛..。
some SQL syntax (文件)
MariaDB> select User, Host, Password from mysql.user;
change all the directories or files permission
find ./ -type d -exec chmod 755 {} \;
find ./ -type f -exec chmod 644 {} \;
Fix http error while upload image

修復遷移/複製網站後跳回原網址
到WP_database_name > wp_options
中把siteurl
和home
改成新的網址。
