早就想搭建一個專屬于自己的博客了,用來記錄自己生活、學習的點點滴滴。之所以選WordPress,主要是因為它可以支持Latex,而且特別喜歡其簡約的風格。
WordPress有個the famous 5 minutes installing,無奈我對LAMP(Linux,Apache,MySQL,PHP)幾乎一無所知,用了將近兩天才把整個博客搭建起來。安裝 WordPres很容易,但是把相關的配置好就比較麻煩了。下面是我整個搭建過程的總結。
操作系統:Ubuntu 12.04LTS
首先列出需要的文件:
1.wordpress http://wordpress.org/download/
2.mysql http://www.mysql.com/downloads/mysql/
3.httpd2.4.6 http://httpd.apache.org/download.cgi
4.apr1.4.8 http://apr.apache.org/download.cgi
5.apr-util1.5.2 http://apr.apache.org/download.cgi
6.php5.5.1 http://php.net/downloads.php
7.libxml2.9.1 http://www.xmlsoft.org/downloads.html
8.prce8.33 http://www.pcre.org
ubuntu安裝ftp服務器(一般配置)
1.安裝vsftpd
~$ sudo apt-get install vsftpd
2.配置vsftpd
2.1修改/etc目錄下的vsftpd的配置文件
$sudo gedit /etc/vsftpd.conf
源文件中不少命令被注釋,根據每條命令的具體說明啟用一部分即可,如下所示:
代碼如下:
listen=YES # 服務器監聽
local_enable=YES # 本地主機訪問允許
write_enable=YES # 寫允許
dirmessage_enable=YES # 進入文件夾允許
xferlog_enable=YES #激活ftp 上傳和下載的日志
connect_from_port_20=YES #允許使用20號端口作為數據傳送的端口
chroot_local_user=YES
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd.chroot_list
secure_chroot_dir=/var/run/vsftpd/empty pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem
2.2設置ftp相關目錄
安裝完畢后,/srv下會增加一個ftp目錄。我們在/srv/ftp目錄下創建兩個分別名為upload和download的目錄,分別用于上傳和下載。
~$ mkdir /srv/ftp/download
~$ mkdir /srv/ftp/upload
接下來我們為剛才創建的幾個目錄設置權限,執行如下命令: ~$ sudo chmod 755 /home/ftp ~$ sudo chmod 777 /home/ftp/upload ~$ sudo chmod 755 /home/ftp/download
3.vsftpd 設置用戶目錄
3.1增加組~$ sudo groupadd ftpgroup
增加用戶ftpuser并設置其目錄為/home/nation/ftp/upload ~$ sudo useradd -g ftpgroup -d /home/nation/ftp/upload -M ftpuser
(注:g:用戶所在的組 d:表示指定創建用戶的目錄的位置,M:不建立默認的自家目錄,也就是說在/home下沒有自己的目錄)
3.2設置用戶口令~$ passwd ftpuser,然后連續兩次輸入口令。
3.3編輯chroot_list文件
~$ sudo gedit /etc/vsftpd.chroot_list 內容為ftp用戶名,每個用戶占一行,如:
ftpuser
4.啟動vsftpd
~$ sudo service vsftpd start
查看當前所有進程: ~$ ps -e 至此服務器端vsftp的基本配置已完成,vsftpd已開啟。(注意防火墻配置) 關閉vsftpd進程只需要執行~$ sudo service vsftpd stop,重啟vsftpd進程執行~$sudo service vsftpd restart
參考:http://blog.csdn.net/nation_chen/article/details/7066277
安裝MySQL
1.安裝MySQL
$ sudo apt-get install mysql-server
2.配置MySQL
注意,在Ubuntu下MySQL缺省是只允許本地訪問的,如果你要其他機器也能夠訪問的話,那么需要改變/etc/mysql/my.cnf配置文件了!下面我們一步步地來:
默認的MySQL安裝之后根用戶是沒有密碼的,所以首先用根用戶進入:
$mysql -u root
進入mysql之后,最要緊的就是要設置Mysql中的root用戶密碼了。
mysql> GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY “123456″;
注意,我這兒用的是123456做為root用戶的密碼,請大家最好使用大小寫字母與數字混合的密碼,且不少于8位。這樣的話,就設置好了MySQL中的root用戶密碼了.
3.用root權限創建數據庫
mysql>CREATE DATABASE xoops;
mysql>GRANT ALL PRIVILEGES ON xoops.* TO xoops_root@localhost IDENTIFIED BY “654321″;
這樣就建立了一個xoops_roots的用戶,它對數據庫xoops有著全部權限。以后就用xoops_root來對xoops數據庫進行管理,而無需要再用root用戶了,而該用戶的權限也只被限定在xoops數據庫中。
如果你想進行遠程訪問或控制,那么你要做兩件事:
其一:
mysql>GRANT ALL PRIVILEGES ON xoops.* TO xoops_root@”%” IDENTIFIED BY “654321″;
允許xoops_root用戶可以從任意機器上登入MySQL。
其二:
$sudo gedit /etc/mysql/my.cnf
>bind-address=127.0.0.1 => bind-address= 你機器的IP
這樣就可以允許其他機器訪問MySQL了。
參考:http://wiki.ubuntu.org.cn/MySQL%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97
安裝PRCE(Perl Compatible Regular Expressions)
在http:www.pcre.org下載pcre8.33.tar.bz2解壓,進入目錄依次執行./configure;make;sudo make install完成安裝,再執行ldconfig。libpcre在后面編譯Apache2時會用到。
安裝httpd2.4.6
編譯httpd時必須保證已經安裝了APR、APR-Util,如果沒有就下載后分別解壓到httpd2.4.6的srclib/apr和/srclib/apr-util下(如過解壓后的目錄帶有版本號,記得將目錄重命名)。在執行./configure命令時在后面添加 –with-included-apr選項。
1.解壓縮后進入目錄
$ bzip2 -d httpd-2.4.3.tar.gz $ tar -xvf httpd-2.4.3.tar $ cd httpd-2.4.3
2.進行配置
$ ./configure --with-included-apr --enable-module=so –prefix=/usr/local/apache2
(如果不指定prefix,會默認安裝到/usr/local/apache2;–enable-module=so不能少了,這在后面安裝PHP時是必須要的)
3.編譯并執行安裝
$ make
$ make install
4.測試(開啟或終止)
$ /usr/local/apache2/bin/apachectl -k start/stop
安裝libxml2
在安裝libxml2之前,需要先安裝python-dev,在終端執行:sudo apt-get install python-dev
1.解壓libxml2后進入目錄
$ tar zxvf libxml2-git-snapshot.tar.gz
$ cd libxml2-2.9.1
2.進行配置
$ ./configure –prefix=/usr/local/libxml2
3.編譯并安裝
$ make
$ make install
如果安裝成功以后,在/usr/local/libxml2 /目錄下將生成bin、include、lib、man和share五個目錄。在后面安裝PHP5源代碼包的配置時,可通過在configure命令的選 項中加上“–with-libxml-dir=/usr/local/libxml2″選項,指定安裝libxml2庫文件的位置。
安裝PHP
在安裝PHP之前,我們必須安裝libpng-dev,否則在執行./configure時會出現找不到png.h的錯誤。只要安裝了libpng-dev后就可以順利configure過去,我看到后面也找不到jpeg相關的東西,就順帶把libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libavcodec-dev, libavformat-dev, libswscale-dev都一起安裝算了,這些在使用OpenCV的時候會用到。在終端執行命令:sudo apt-get install libjpeg-dev libpng-dev libtiff-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev
1.解壓縮后進入目錄
$ bzip2 -d php-5.5.1.tar.bz2
$ tar -xvf php-5.5.1.tar
$ cd php-5.5.1
2.進行配置
$ ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql --with-libxml-dir=/usr/local/libxml2 --with-gd --with-zlib --enable-mbstring --enable-zip –with-libxml-dir=/usr/local/libxml2
(注意:不要少了—with-zlib,不然后面在WordPress中安裝插件或升級時會出現”Missing zlib extensions”的問題)。
3.編譯并安裝
$ make
$ make install
4.設置PHP的配置文件php.ini
$ cp php.ini-development /usr/local/lib/php.ini
5.配置Apache的httpd.conf使其能加載PHP模塊
$ sudo gedit /usr/local/apache2/conf/httpd.conf
修改httpd.conf的內容,確保下面兩條沒被注釋掉:
代碼如下:
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule php5_module modules/libphp5.so
因為WordPress用到了Apache的mod_rewrite模塊,故這里的第一條也不能被注釋掉。
6.配置Apache的httpd.conf使其支持PHP相關的擴展名文件
添加如下代碼
代碼如下:
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch> #僅支持.php
或者
代碼如下:
<FilesMatch "\.ph(p[2-6]?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch> #支持.php,.php2,.php3,.php4,.php5,.php5和phtml
允許.php文件被php源碼過濾器處理并以高亮模式顯示源碼,添加如下代碼:
代碼如下:
FilesMatch "\.phps$">
<SetHandler application/x-httpd-php-source
</FilesMatch>
RewriteEngine On
RewriteRule (.*\.php)s$ $1 [H=application/x-httpd-php-source]
7.重啟Apache
/usr/local/apache2/bin/apachectl restart
在瀏覽器中輸入本機IP地址,可以看到頁面顯示“It works!"。
安裝WordPress
第一步:下載WordPress安裝包并解壓
從此處下載WordPress壓縮包并解壓縮 http://wordpress.org/download/
如果你想將WordPress上傳至一個遠程服務器,先下載WordPress壓縮包至你的電腦,接著解壓縮
如果你使用shell來訪問你的服務器,而且你可以很輕松地使用console工具,你可以使用wget (或者 lynx再或者其他的console命令)來直接下載WordPress至你的web server,這樣就可以避免使用FTPing(該方法適用于Linux系統):
$wget http://wordpress.org/latest.tar.gz
接著使用一下命令解壓縮: $tar -xzvf latest.tar.gz
這樣WordPress壓縮包將會解壓縮至文件夾wordpress,這個文件夾與你下載的latest.tar.gz壓縮包處于同一個目錄下.
如果你沒有shell來訪問你的服務器,或者你不方便使用 console工具,你可以使用ZipDeploy上傳WordPress至你的web server
第二步:創建WordPress數據庫和一個用戶
你可以利用shell運行mysql語句,快速而方便地創建MySQL用戶和數據庫。下面給出創建語句,其中美元符號表示命令提示符:
代碼如下:
$ mysql -u adminusername -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5340 to server version: 3.23.54
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> CREATE DATABASE databasename;
Query OK, 1 row affected (0.00 sec)
mysql> GRANT ALL PRIVILEGES ON databasename.* TO <a href="mailto:"wordpressusername"@"hostname">"wordpressusername"@"hostname</a>"
-> IDENTIFIED BY "password";
Query OK, 0 rows affected (0.00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.01 sec)
mysql> EXIT
Bye
$
從這個例子中可以看出:
根用戶名(root)也是管理員用戶名 (adminusername)。用看似“普通“的名稱作為mysql管理員名稱更加安全,這樣就不會把“mysql”命令作為系統根用戶輸入了。(盡量 避免以根用戶的身份工作,降低被發現的可能性)。數據庫管理員使用mysqladmin時的用戶名可以作為mysql用戶名。
wordpress或blog都是數據庫名稱的理想選擇。
可以用wordpress作為wordpress用戶名,但需要注意,如果在這里使用wordpress,所有人都能猜出你的 wordpress用戶名。
hostname通常是localhost。如果不知道將hostname設為什么并且自己不是WordPress虛擬主機的管理員,請查看系統管理員信息。系統管理員可以考慮使用非根用戶賬號來管理數據庫。
應選擇保密性較高的密碼,最好是大小寫字母、數字及符號的組合。避免使用字典中的某個單詞,可以選擇自己能夠記住的一個詞組中每個單詞的首字母作為密碼。
如果想把這些用戶名和密碼記下來,避免在用戶名和密碼保護范圍內做記錄。需要記住的包括數據庫名稱、wordpress用戶名、hostname以及密碼。當然,這些信息已經在(或者會暫時在)wp-config.php文件中,也沒有必要在別的地方重復記錄了。
第三步:設置wp-config.php文件
用戶可以親自創建并編輯wp-config.php文件,也可以在運行安裝腳本(第五步)時讓WordPress幫助用戶編輯wp-config.php(不過仍然需要告訴WordPress我們的數據庫信息)。
(更多細節以及創建wp-config.php配置文件和密碼密鑰的信息請點擊編輯wp-config.php文件。)
返回第一步中解壓WordPress壓縮包的位置,將wp-config-sample.php重命名為wp-config.php,之后在文本編輯器中打開該文件。
在標有
// ** MySQL settings - You can get this info from your web host ** //
下輸入你的數據庫相關信息
DB_NAME
在第二步中為WordPress創建的數據庫名稱
DB_USER
在第二步中創建的WordPress用戶名
DB_PASSWORD
第二步中為WordPress用戶名設定的密碼
DB_HOST
第二步中設定的hostname(通常是localhost,但總有例外;參見編輯wp-config.php文件中的“可能的DB_HOST值)。
DB_CHARSET
數據庫字符串,通常不可更改(參見zh-cn:編輯wp-config.php)。
DB_COLLATE
留為空白的數據庫排序(參見zh-cn:編輯wp-config.php)。
在標有
* Authentication Unique Keys.
的版塊下輸入密鑰的值(在線密鑰生產器https://api.wordpress.org/secret-key/1.1/salt/),保存wp-config.php文件。
第四步:上傳文件
接下來需要決定將博客放在網站的什么位置上:
網站根目錄下(如:http://example.com/)
網站子目錄下(如:http://example.com/blog/)
Note: 我們的網頁根目錄在web服務器文件流中的位置會隨虛擬主機商和操作系統而發生變化。具體情況請咨詢虛擬主機商或系統管理員。
根目錄
如果需要將文件上傳到web服務器,可用FTP客戶端將wordpress目錄下所有內容(無需上傳目錄本身)上傳至網站根目錄
如果文件已經在web服務器中且希望通過shell訪問來安裝wordpress,可將wordpress目錄下所有內容(無需轉移目錄本身)轉移到網站根目錄
子目錄
如果需要將文件上傳到web服務器,需將wordpress目錄重命名,之后用FTP客戶端將重命名后的目錄上傳到網站根目錄下某一位置
如果文件已經在web服務器中且希望通過shell訪問來安裝wordpress,可將wordpress目錄轉移到網站根目錄下某一位置,之后重命名 wordpress目錄
第五步:運行安裝腳本
在常用的web瀏覽器中運行安裝腳本。
將WordPress文件放在根目錄下的用戶請訪問:http://example.com/wp-admin/install.php
將WordPress文件放在子目錄(假設子目錄名為blog)下的用戶請訪問:http://example.com/blog/wp-admin/install.php
安裝配置文件
WordPress無法查找到wp-config.php文件時會通知用戶并試圖自動創建并編輯wp-config.php文件。(用戶可以在web瀏覽器中加載wp-admin/setup-config.php以新建wp-config.php文件。)WordPress詢問用戶數據庫的具體情況并將之寫入新的wp-config.php文件。如果新文件創建成功,用戶可以繼續安裝;否則需返回第三步:設置wp-config.php文件。
第六步:修改Apache的httpd.conf
$ sudo gedit /usr/local/apache2/conf/httpd.conf
將Apache綁定到制定的IP和/或端口上
Listen 192.168.0.155:80
指定服務器出現的問題應該被發送到的郵箱地址
ServerAdmin yunfeiwang@hust.edu.cn
指定服務器的域名和端口,如果沒有注冊域名,可以填IP地址
ServerName 192.168.0.155:80
指定wordpress所在的絕對路徑
代碼如下:
DocumentRoot "/srv/upload/wordpress"
<Directory "/srv/upload/wordpress">
指定Wordpress進行讀寫文件操作的user和group
代碼如下:
group groupname
user username
[/code
切換語言/語言包(這步我沒做,就用英文的算了)
下面步驟指導您將現有的英文 WordPress 站點切換為中文。
通過 FTP、SSH 等方式打開并編輯站點根目錄下的 wp-config.php文件。
查找 define('WPLANG', '');一行,在第二個參數處填入 zh_CN,變成 define('WPLANG', 'zh_CN');并保存文件。
進入站點控制板(dashboard),看到更新提示后進行升級即可。WordPress 會自動從官方網站下載中文語言包并安裝。
若 您當前正在使用非官方的中文語言包,請您注意:非官方語言包通常會替換 WordPress 程序本身的升級部分,使 WordPress 通過第三方服務器升級,這可能有一定風險。若您不愿使用官方版本的語言包,請務必選擇您信任的語言包。至于使用何種中文支持,完全由您自主選擇。 WordPress 并不會禁止您使用非官方語言包。當然,我們會認真處理您的批評和建議,歡迎聯系我們。
如下是卸載非官方語言包、安裝官方中文版本的通用步驟。請注意,如果您沒有使用非官方版本的語言包,請不要進行下列操作。我們在這里假設您使用的非官方中文版本沒有改動您的數據庫:
備份數據庫。
備份所有文件,并刪除博客根目錄下除 wp-config.php之外的所有文件。請注意保留 wp-config.php。
從 cn.wordpress.org 下載最新官方中文版本。解壓縮并上傳至站點根目錄。
(選做)比對 wp-config-sample.php和留下的 wp-config.php:若 wp-config-sample.php有新增的內容,請復制并按照說明填寫;若留下的 wp-config.php比 wp-config-sample.php中的設置項還要多,請刪除那些多余的項目。
參考:<a href="http://codex.wordpress.org/zh-cn:%E5%AE%89%E8%A3%85_WordPress">http://codex.wordpress.org/zh-cn:%E5%AE%89%E8%A3%85_WordPress</a>
其他問題
1.安裝插件Latex Everyting時出現了“Could not create directory”的問題,"Could not create directory./youdir/wp-content/upgrade:
解決方法如下: 1. 找到這個文件: /wp_admin/includes/class-wp-filesystem-direct.php 2. 查找 “function mkdir” 3. 修改這個函數至如下的代碼,至插件 Fix “Cound not create directory” problem 這一段,即可
[code]
function mkdir($path, $chmod = false, $chown = false, $chgrp = false) {
// safe mode fails with a trailing slash under certain PHP versions.
$path = untrailingslashit($path);
if ( empty($path) )
return false;
if ( ! $chmod )
$chmod = FS_CHMOD_DIR;
if ( ! @mkdir($path) )
return false;
$this->chmod($path, $chmod);
if ( $chown )
$this->chown($path, $chown);
if ( $chgrp )
$this->chgrp($path, $chgrp);
return true;
}
結果還是不行。
猜測是權限的問題,執行$ chmod 777 wp-content,還是出現類似的錯誤,但是我們發現不能創建的目錄變了,“Could not create directory./yourdir/wp-content/plugins/latex-everyting。
這時我們應該檢查一下wp-content文件夾下的的權限問題,更改wp-content目錄及其子目錄的權限,執行$chmod -R 777 wp-content后問題解決。
2.激活Latex Everyting時出現問題
Fatal error:Call-time pass-by-reference has been removed in /yourdir/latex-single-posts.php on line 7
解決方法:這里出現問題的原因都是一樣的,及參數的傳遞錯誤。我們可以根據提示的代碼錯誤行數找到錯誤并修改。
激活插件
修改latex-single-posts.php第7行,
將latex_everything->add_controller(‘single_post’,&$latex_single_post_controller);
修改為latex_everything->add_controller(‘single_post’,$latex_single_post_controller);
繼續激活,又出現了問題
Fatal error:Call-time pass-by-reference has been removed in /yourdir/latex-post-types.php on line 8
修改latex-post-types.php第8行,
將latex_everything->add_controller(‘post_type’,&$latex_post_type_controller);
修改為latex_everything->add_controller(‘post_type’,$latex_post_type_controller);
繼續激活,還是出現了問題:
Fatal error:Call-time pass-by-reference has been removed in /yourdir/latex-terms.php on line 7
修改latex-terms.php第7行,
將latex_everything->add_controller(‘term’,&$latex_term_controller);
修改為latex_everything->add_controller(‘term’,$latex_term_controller);
3.WordPress提示:執行請求動作,連接信息必需提供
在 wordpress后臺自動升級以及更新刪除主題或者插件的時候,需要輸入FTP賬戶信息。據說這個填寫FTP信息界面,只會出現在PHP進程不是以用戶 身份來運行的主機上,也就是網站服務器運行PHP的用戶和 wordpress文件夾的所有者不一樣,目的就是為了安全,wordpress在升級時會創建一個臨時文件看看owner是不是和當前運行的php是否 一樣,如果不一樣,就會出現這個界面。
遇到這種情況的解決辦法:
在wp-config.php中填寫連接信息。
如果為了以后更新方便的話可以在 wp-config.php 中加入一下代碼:
// ** FTP SETTINGS FOR AUTO-UPDATE ** // define(‘FTP_HOST’, ‘localhost’); define(‘FTP_USER’, ‘ftp帳號’); define(‘FTP_PASS’, ‘ftp密碼’);
這樣無論升級 wordpress 或者插件的時候就都不會有那個FTP提示了。
4.修改wordpress上傳文件2M限制
編輯php.ini文件:
#vim /usr/local/lib/php.ini
大概在591行處有一個參數:upload_max_filesize = 10M,默認為2M,將其中的2M改為你想要限制的大小,如下所示。然后我順手把每次可上傳的最大文件數由20改為了30.
代碼如下:
//===================
; Maximum allowed size for uploaded files.
; <a href="http://php.net/upload-max-filesize">http://php.net/upload-max-filesize</a>
upload_max_filesize = 20M
; Maximum number of files that can be uploaded via a single request
max_file_uploads = 30
//================
重啟apache服務器
#/usr/local/apache2/bin/apachectl restart
不知道為什么我修改了之后總是8M。繼續找資料,后來發現原來這個大小是取post_max_size和upload_max_filesize中的最小值,繼續修改如下:
代碼如下:
//=====================================
; Maximum size of POST data that PHP will accept.
; <a href="http://php.net/post-max-size">http://php.net/post-max-size</a>
post_max_size = 30M
//=======================================
重啟apache服務器
#/usr/local/apache2/bin/apachectl restart
OK~
參考:http://naonao.blog.51cto.com/1135983/827973
http://ar.newsmth.net/thread-add920665842c4.html
5.當想使用個性化的Permalink時,出現.htaccess不能寫的問題
在WordPress的根目錄下新建一個名為.htaccess的文件,然后修改其權限
$touch .htaccess
$chmod 666 .htaccess
你可以用下面這些標簽來定制“美觀”或者“接近美觀”的固定鏈接,這里有一些注意事項:
確保用 %post_id% 或%postname% 結束結固定鏈接結構(如/%year%/%monthnum%/%day%/%postname%/)),這樣每個固定鏈接都會指向一篇獨立的日志。
考慮到運行上的問題,最好不要以分類、標簽、作者或是日志名字段作為固定鏈接結構的開始。這是因為這些都是文本字段,如果以文本字段作為固定鏈接結構的起始 部分,WordPress需要花更多時間來判斷這是一個日志的URL還是頁面的URL(頁面URL總是使用“頁面別名”作為URL),為了作為補 償,WordPress在數據庫中存儲了大量額外信息(信息數量之龐大直接影響到了具有多個頁面的網站的運行)。因此,最好以年份或日志ID等數值型字段 開始你的固定鏈接結構。參見WordPress測試者對這個問題的討論。參考:http://www.cnblogs.com/lhb25/archive/2010/07/23/1783381.html
6.使用XML-Sitemap時出現文件不能寫的問題
先打開博客頁面的Settings下面XML-Sitemap選項,取消Basic Options下面的Sitemap files下的兩個選項。
然后在博客的根目錄下新建名為sitemap.xml和sitemap.xml.gz的文件
$touch sitemap.xml sitemap.xml.gz
修改這兩個文件的權限
$chmod 755 sitemap.xml sitemap.xml.gz
參考:http://www.arnebrachhold.de/2006/04/07/google-sitemaps-faq-sitemap-issues-errors-and-problems/?utm_source=wp-wm&utm_medium=install&utm_content=help-files#P28_gen_files
7. 403 forbidden you don’t have permission to access / on this server
這類問題只可能出現在Apache Server上面。如果出現這種問題,請打開Apache的配置文件httpd.conf,查看DocumentRoot指定的整個網站的文件夾是否正確,如果正確的話就檢測改文件夾對應的讀寫權限。一般就是這兩個方面的問題引起的??梢詤⒓硬┪?/span>http://www.lost-in-code.com/server-management/403-forbidden-you-dont-have-permission-to-access-on-this-server/。這篇文章里面的DirectoryIndex不是這次引發403 forbidden問題的原因,而是DocumentRoot指定文件夾權限的問題。httpd.conf文件的DirectorIndex只有一項index.html,而我們的WordPress都是PHP的網頁,如果不加上一項index.php的話,我們的網站只會顯示一個目錄的Index。
8.網頁的標題出現亂碼
因為我啟用了All In One Seo Pack插件,導致網頁的標題出現亂碼。點擊網頁地址欄下的SEO字樣進行插件設置,取消Rewrite titles,即可解決問題。
最后,經過第一次安裝WordPress的經歷,再加上第二次重裝系統后再利用之前WordPress的數據備份還原我的整個WordPress的痛苦經歷。我總結出了一個小經驗:一定要注意WordPress文件夾和文件的屬性!文件夾都設置成755或者更高的權限,文件都可以設置成644。如果文件夾的屬性不是755,那么會出現各種意想不到的問題!