WordPress搭建Personal Blog【轉】

早就想搭建一個專屬於本身的博客了,用來記錄本身生活、學習的點點滴滴。之因此選WordPress,主要是由於它能夠支持Latex,並且特別喜歡其簡約的風格。php

WordPress有個the famous 5 minutes installing,無奈我對LAMP(Linux,Apache,MySQL,PHP)幾乎一無所知,用了將近兩天才把整個博客搭建起來。安裝 WordPres很容易,可是把相關的配置好就比較麻煩了。下面是我整個搭建過程的總結。html

操做系統:Ubuntu 12.04LTSpython

首先列出須要的文件:mysql

1.wordpress http://wordpress.org/download/git

2.mysql http://www.mysql.com/downloads/mysql/web

3.httpd2.4.6 http://httpd.apache.org/download.cgisql

4.apr1.4.8 http://apr.apache.org/download.cgishell

5.apr-util1.5.2 http://apr.apache.org/download.cgi數據庫

6.php5.5.1 http://php.net/downloads.phpapache

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.配置Apachehttpd.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.配置Apachehttpd.conf使其支持PHP相關的擴展名文件

添加以下代碼

1 <FilesMatch \.php$>
2   SetHandler application/x-httpd-php
3 </FilesMatch> #僅支持.php

或者

1 <FilesMatch "\.ph(p[2-6]?|tml)$">
2     SetHandler application/x-httpd-php
3 </FilesMatch> #支持.php,.php2,.php3,.php4,.php5,.php5和phtml

容許.php文件被php源碼過濾器處理並以高亮模式顯示源碼,添加以下代碼:

1 <FilesMatch "\.phps$">
2     SetHandler application/x-httpd-php-source
3 </FilesMatch>
4 
5 RewriteEngine On
6 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 "wordpressusername"@"hostname"
    -> 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文件

第六步:修改Apachehttpd.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

切換語言/語言包(這步我沒作,就用英文的算了)

若您是初次安裝 WordPress,請點擊這裏

下面步驟指導您將現有的英文 WordPress 站點切換爲中文。

  1. 經過 FTP、SSH 等方式打開並編輯站點根目錄下的 wp-config.php文件。
  2. 查找 define('WPLANG', '');一行,在第二個參數處填入 zh_CN,變成 define('WPLANG', 'zh_CN');並保存文件。
  3. 進入站點控制板(dashboard),看到更新提示後進行升級便可。WordPress 會自動從官方網站下載中文語言包並安裝。

若 您當前正在使用非官方的中文語言包,請您注意:非官方語言包一般會替換 WordPress 程序自己的升級部分,使 WordPress 經過第三方服務器升級,這可能有必定風險。若您不肯使用官方版本的語言包,請務必選擇您信任的語言包。至於使用何種中文支持,徹底由您自主選擇。 WordPress 並不會禁止您使用非官方語言包。固然,咱們會認真處理您的批評和建議,歡迎聯繫咱們

以下是卸載非官方語言包、安裝官方中文版本的通用步驟。請注意,若是您沒有使用非官方版本的語言包,請不要進行下列操做。咱們在這裏假設您使用的非官方中文版本沒有改動您的數據庫:

  1. 備份數據庫。
  2. 備份全部文件,並刪除博客根目錄下 wp-config.php以外的全部文件。請注意保留 wp-config.php。
  3. 從 cn.wordpress.org 下載最新官方中文版本。解壓縮並上傳至站點根目錄。
  4. (選作)比對 wp-config-sample.php和留下的 wp-config.php:若 wp-config-sample.php有新增的內容,請複製並按照說明填寫;若留下的 wp-config.php比 wp-config-sample.php中的設置項還要多,請刪除那些多餘的項目。

參考:http://codex.wordpress.org/zh-cn:%E5%AE%89%E8%A3%85_WordPress

其餘問題

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 這一段,便可

複製代碼
 1 function mkdir($path, $chmod = false, $chown = false, $chgrp = false) {
 2         // safe mode fails with a trailing slash under certain PHP versions.
 3         $path = untrailingslashit($path);
 4         if ( empty($path) )
 5             return false;
 6 
 7         if ( ! $chmod )
 8             $chmod = FS_CHMOD_DIR;
 9 
10         if ( ! @mkdir($path) )
11             return false;
12         $this-&gt;chmod($path, $chmod);
13         if ( $chown )
14             $this-&gt;chown($path, $chown);
15         if ( $chgrp )
16             $this-&gt;chgrp($path, $chgrp);
17         return true;
18 }
複製代碼

結果仍是不行。

猜想是權限的問題,執行$ 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.
; http://php.net/upload-max-filesize

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.
; http://php.net/post-max-size
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指定的整個網站的文件夾是否正確,若是正確的話就檢測改文件夾對應的讀寫權限。通常就是這兩個方面的問題引發的。能夠參加博文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,那麼會出現各類意象不到的問題!

相關文章
相關標籤/搜索