WIKI使用導(dǎo)航
站長百科導(dǎo)航
站長專題
- 網(wǎng)站推廣
- 網(wǎng)站程序
- 網(wǎng)站賺錢
- 虛擬主機
- cPanel
- 網(wǎng)址導(dǎo)航專題
- 云計算
- 微博營銷
- 虛擬主機管理系統(tǒng)
- 開放平臺
- WIKI程序與應(yīng)用
- 美國十大主機
WordPress:Using Permalinks
導(dǎo)航: 上一級 | WordPress | 首頁 | WordPress中文論壇 | WordPress主機 | CMS程序 | 論壇程序 | ECShop | ShopNC | PowerEasy
Permalinks是你的個人網(wǎng)絡(luò)博客帖子永久的URLs也是你的網(wǎng)絡(luò)博客內(nèi)容的目錄和其它的列表。一個permalink是另一個寫博客的人用來鏈接到你的文章(或者部分),或者用來使你在一個電子郵件信息中發(fā)送一個鏈接到你寫的故事中。每篇文章的URL應(yīng)該是永久的,是永遠都不能更改的-既然是perma鏈接。
Permalink形式[ ]
WordPress有三種基本的permalinks形式:
默認(rèn)的: "Ugly"[ ]
默認(rèn)的看起來像:
http://example.com/?p=N
在N是Post ID數(shù)字的位置。它在所有的服務(wù)器環(huán)境中都能夠運行,但是它沒有其它的一些選項看起來好看。
mod_rewrite: "漂亮的 Permalinks"[ ]
這些是permalinks的holy grail(看看漂亮的Permalinks)。有許多不同的版式,但是最常見的,最通用的,看起來像這樣的
http://example.com/category/post-name/ 或者 http://example.com/year/month/day/post-name
有的人刪除了一些或者所有的有關(guān)日期的部分(年,月,日)以形成一個比較簡短的permalink樣式。mod_rewritepermalinks需要Apache的mod_rewrite模塊。
對于lightpd,請看外部資源。
PATHINFO: "幾乎是漂亮的"[ ]
PATHINFOpermalinks看起來與mod_rewrite permalinks非常地相像,但是有一點不同,PATHINFOpermalinks前面嵌入了/index.php,看起來像這樣的:
http://example.com/index.php/yyyy/mm/dd/post-name/
否則的話,他們與"pretty" mod_rewrite permalinks是一樣的,而且同樣地靈活。任何mod_rewrite permalinks可以執(zhí)行的,在/index.php部分的幫助下,PATHINFO permalinks也可以做。
有一個有用的插件會顯示正在使用的permalinks的形式,以及WordPress所使用的內(nèi)部rewrite規(guī)則的詳細信息。
選擇你的 permalink 結(jié)構(gòu)[ ]
在選項→Permalinks面板上,你可以選擇其中一個"普通的"結(jié)構(gòu),或者使用結(jié)構(gòu)標(biāo)簽,在"自定義結(jié)構(gòu)" 區(qū)輸入你自己的結(jié)構(gòu)。
要激活PATHINFO permalinks,請以index.php/開始,激活你的permalink結(jié)構(gòu)。
結(jié)構(gòu)標(biāo)簽[ ]
你可以使用這些標(biāo)簽來自定義你的"漂亮的"或者 "幾乎是漂亮的"permalinks。確保以%post_id% 或者%postname%結(jié)束你的結(jié)構(gòu)(例如/%year%/%monthnum%/%day%/%postname%/)這樣每個permalink點都會指向每一篇文章。
- %year%
- 帖子發(fā)表的年份,四位數(shù)字,例如2004
- %monthnum%
- 一年的月份,例如05
- %day%
- 一個月的具體日期,例如28
- %hour%
- 一天的具體時間,例如15
- %minute%
- 一小時的具體分鐘,例如43
- %second%
- 一分的具體秒數(shù),例如33
- %postname%
- 一個清潔版的帖子標(biāo)題(post slug 在編輯文章/頁面面板區(qū)域). So “這是一篇非常好的帖子!”變成了URI中的this-is-a-great-post(請看只使用%postname%)
- %post_id%
- 帖子獨一無二的ID #,例如423
- %category%
- 一個類別名的清潔版本(新的/編輯目錄面板上的category slug區(qū)域)。嵌套的子類別在URL上以一個嵌套的子目錄出現(xiàn)。
- %author%
- 一個文章作者名的清潔版本。
類別基礎(chǔ)[ ]
Category base是用在類別permalinks中的一個前綴,通常采取的形式是 category_base/category_name
默認(rèn)的類別基礎(chǔ)是category。
自定義permalinks幾乎在所有的系統(tǒng)上運行時都沒有什么問題,但是在一些情況下,一些問題仍然會產(chǎn)生。
只使用 %postname%[ ]
如果你將帖子名作為你的permalinks中創(chuàng)建一個例如example.com/post-title結(jié)構(gòu)的唯一的因素,rewrite規(guī)則,可能使你無法訪問網(wǎng)頁,例如你的樣式表(樣式表有一個相似的版式)或者/wp-admin/文件夾[在 WordPress 2.0+ 版本中也是這樣的嗎?]。最好在permalink中添加一些數(shù)字?jǐn)?shù)據(jù)(例如帖子的ID或者日期),以防止這種情況的發(fā)生。此外,WordPress v1.2.x需要使用一些日期結(jié)構(gòu)來為一些功能服務(wù),例如使日歷合適地運轉(zhuǎn)。/%year%/%monthnum%/%day%/%postname%/通常是一個好的開始。
在一篇帖子中的多個類別中使用%category%[ ]
當(dāng)你給一篇帖子指派多個類別的時候,permalink中只能顯示一個類別。這個類別將是編號最低的類別(請看管理類別)。通過所有的類別帖子應(yīng)該能夠正常地訪問。
使用 "漂亮的" permalinks[ ]
要求必備的條件:
- 用mod_rewrite模塊來安裝Apache網(wǎng)絡(luò)服務(wù)器
- 在WordPress的主頁目錄:
- 激活的FollowSymLinks 選項
- FileInfo 指示允許(例如
AllowOverride FileInfo
,AllowOverride All
) - 一個.htaccess文件(如果這個文件丟失了,當(dāng)你激活"pretty" permalinks時,WordPress會試著創(chuàng)建它)
- 如果你想要WordPress自動地更新.htaccess文件,WordPress需要擁有對于文件的寫權(quán)限。
- 對于lightpd,請看外部資源
當(dāng)你創(chuàng)建或者更新一個"pretty" permalink結(jié)構(gòu),WordPress會產(chǎn)生重寫規(guī)則,并試著將它們插入一個合適的.htaccess文件。如果它不能那樣做的話,它就會顯示你現(xiàn)在需要更新你的.htaccess ,并且為你打印出規(guī)則讓你復(fù)制并且粘貼到文件中(將它們放在最后)。
在WordPress 2.0+版本中,你可能只要做一次這樣的步驟,因為WordPress在內(nèi)部重寫了。如果你曾經(jīng)移動了你的WordPress主頁目錄(Blog address),你就要重復(fù)這個步驟。
對于一個現(xiàn)存的.htaccess,WordPress會運轉(zhuǎn)得很好,也不會刪除任何現(xiàn)有的RewriteRules或者其它的指示。如果你有其它的mod_rewrite規(guī)則,將你的規(guī)則放在WordPress的前面。
我的 .htaccess 文件在哪兒?[ ]
WordPress的index.php 和 .htaccess文件應(yīng)該在一起出現(xiàn)在目錄上,有你的總選項網(wǎng)頁上Blog address (URI)設(shè)置顯示。因為文件名是以一個點號開始的,通過一個FTP client可能看不見這個文件,除非你更改了FTP工具的參數(shù)選擇,使其能夠顯示所有的文件,包括那些隱藏的文件。
創(chuàng)建和編輯 (.htaccess)[ ]
如果你還沒有一個.htaccess文件,創(chuàng)建一個。如果你有shell或者ssh權(quán)限進入你的服務(wù)器,一個簡單的touch .htaccess
命令就能創(chuàng)建文件。如果你使用FTP來傳輸文件,在你的本地電腦上創(chuàng)建一個文件,命名為1.htaccess,將它上傳到你的WordPress文件夾的根上,然后將它重新命名為.htaccess。
你可以通過FTP,shell,或者(有可能)你的主機的控制面板來編輯.htaccess文件。
如果你的.htaccess文件包含有錯誤,并且破壞了你的站點("內(nèi)部服務(wù)器錯誤 (500)"),你就要使用FTP或者你的主機的控制面板來刪除劣質(zhì)的.htaccess 文件。
自動上傳 .htaccess[ ]
如果WordPress不能自動上傳你的.htaccess文件,它會向你顯示一些內(nèi)容像如果你的.htaccess文件是可寫的,我們就能自動地上傳,但是你的文件不是可寫的…在選項&rarr附近顯示;Permalinks面板上。
如果你想要WordPress來自動地上傳這個文件,你就需要給 WordPress 寫 .htaccess文件的權(quán)限。所需要的精確的權(quán)限取決于你的服務(wù)器設(shè)置。試著給用戶提供寫權(quán)限,然后給小組提供,然后給世界提供寫權(quán)限,在每次更改權(quán)限后,測試一下;WordPress一旦成功地編輯了文件,不要再添加更廣的寫權(quán)限了
在應(yīng)用了permalinks之后,你應(yīng)該將權(quán)限設(shè)置為更強的,像660或者644,來阻止服務(wù)器上的其他人潛在地訪問了它。
沒有mod_rewrite的Permalinks[ ]
"Pretty" permalinks需要mod_rewrite, IIS(在Windows服務(wù)器上很常見)并不支持mod_rewrite。(如果你在Windows上使用了Apache 2.0.54,倘若mod_rewrite在apache\conf\httpd.conf中激活了,它便能夠運行。)但是你可以嘗試PATHINFO permalinks;將index.php/放在你自定義的permalinks 結(jié)構(gòu)的開端:
/index.php/%year%/%monthnum%/%day%/%postname%/
這個選項并不是總是能夠運行,特別當(dāng)WordPress在IIS 6 上運行的時候。要使這個選項在IIS 上運行,將這2行添加到一個php.ini文件,在你的網(wǎng)絡(luò)根上儲存這個文件(http://blog.taragana.com/index.php/archive/wordpress-tip-on-permalink-options):
cgi.fix_pathinfo = 1 cgi.force_redirect = 0
還有一個方法就是使用IIS的自定義401redirects。它需要你的網(wǎng)絡(luò)主機允許你添加一個自定義的404redirect,但是它不需要你安裝任何第三方的mod_rewrite軟件,而且它也不需要你的permalink結(jié)構(gòu)以/index.php/開始。
- 另一個非常簡單的自定義404redirect解決辦法:http://tech.einaregilsson.com/2007/07/30/pretty-wordpress-permalinks-on-iis/
如果你在你的服務(wù)器上有管理者特權(quán),你可能對這些解決辦法感興趣:
- Dean Lee的在IIS下的為WordPress的URL Rewriting
解決 Permalink 問題[ ]
解決.htaccess 產(chǎn)生 問題[ ]
如果你安裝的WordPress沒有產(chǎn)生一個.htaccess文件或者如果WordPress沒有在你現(xiàn)存的.htaccess文件寫下新的規(guī)則,可能有兩種原因?qū)е铝诉@種情況。一步一步地運行,只有在前一個步驟不能運行之后,再開始下一個步驟。
- 改變文件權(quán)限:你必須改變文件權(quán)限 .htaccess文件權(quán)限改為6666,并且用WordPress模板編輯器對它進行編輯,但是并不推薦你這樣做,因為如果你這樣做了,你的博客上的任何用戶,可以編輯模板的,都可以編輯文件。你可以將權(quán)限改為660,這樣文件只有對服務(wù)器是可寫的,這也會有一些限制。
- 服務(wù)器封鎖:你的主機可能封鎖了服務(wù)器_軟件變數(shù),這可能導(dǎo)致WordPress不能產(chǎn)生.htaccess。如果你確定你的服務(wù)器正在運行Apache,你可以通過更改你的wp-includes/vars.php文件,迫使WordPress相信你的服務(wù)器正在運行Apache。按照下面的這些步驟,來做出這些更改。
- 使用你的WordPress管理面板上內(nèi)置的文件編輯器來打開wp-includes/vars.php文件。要導(dǎo)航到這個面板,先登錄到WordPress,點擊"管理",然后點擊"文件",下滾至低端,在"其它的文件"標(biāo)題下的文本框中輸入wp-includes/vars.php。
查找
$is_apache = strstr($_SERVER['SERVER_SOFTWARE'], 'Apache') ? 1 : 0;
并將它替換為// $is_apache = strstr($_SERVER['SERVER_SOFTWARE'], 'Apache') ? 1 : 0;
- 在a new line under
// $is_apache = strstr($_SERVER['SERVER_SOFTWARE'], 'Apache') ? 1 : 0;
and type in$is_apache = 1;
下添加一行
- XAMPP的用戶 (Windows):一些版本的XAMPP在默認(rèn)情況下不能夠mod_rewrite(雖然它在Apache中得到了 匯編)。是它能夠-隨之使WordPress能夠?qū)?tt>.htaccess文件,需要這個文件來創(chuàng)建pretty permalinks-你必須打開apache/conf/httpd.conf并且不要注釋LoadModule rewrite_module modules/mod_rewrite.so(例如,刪除行首的hash/pound標(biāo)記。
Permalinks, .htaccess, 和 MS Frontpage[ ]
關(guān)于Microsoft Frontpage的一個注釋:許多服務(wù)器(共享的和專用的)有許多不同的主機公司建造和維護,這些服務(wù)器都有用apache構(gòu)造編譯的mod_frontpage,在許多情況下,在每個虛擬服務(wù)器上還安裝了Frontpage 服務(wù)器 擴展。這是最常見不過的了,如今許多大多數(shù)主機公司的服務(wù)器構(gòu)造過程都使用了許多/大多數(shù)的可執(zhí)行的二進制,這些可執(zhí)行碼,包括了mod_fronpage和服務(wù)器擴展。即使因為擴展與apache結(jié)合的方式(和httpd.conf文件),你沒有使用Frontpage,當(dāng)你試著查看你的WP安裝的時候,你可能得到一個500錯誤或者一個空白的白色網(wǎng)頁(雖然管理面板可能正常地運轉(zhuǎn)),原因就在于你的服務(wù)器上存在extensions/mod_frontpage。
WordPress會與安裝的Frontpage擴展一起恰當(dāng)?shù)剡\行,但是peralinks確不能運行,而且來自Wordpress管理界面的對于permalinks部分的任何的更改,都會導(dǎo)致Frontpage服務(wù)器擴展的毀壞,原因就在于給.htaccess文件添加了mod_rewrite規(guī)則。但是有一個辦法可以解決這個問題。
Quick Fixes, Frontpage 或者 Permalinks[ ]
Frontpage擴展 解決:如果你不在乎permalinks,只想讓MS Frontpage服務(wù)器擴展再次地運行,你只要編輯你的.htaccess文件,并且用rewrite規(guī)則,來移除WordPress部分。
使用Permalinks:如果你不在乎Frontpage(但是你的主機公司安裝了擴展)
你就要移除(或者讓你的主機公司移除)MS Frontpage 服務(wù)器擴展,或者編輯.htaccess文件來移除所有的Frontpage行,只留下WordPress mod_rewrite代碼。
共同地使用 FrontPage 和 Permalinks[ ]
最后,一個解決辦法。
關(guān)于這個問題論壇上有幾個主題,而且目前為止,沒有出現(xiàn)解決問題的辦法。
一般來說,在一個安裝了FrontPage服務(wù)器擴展的Unix服務(wù)器上,WordPress運行得很好,你可以編輯和發(fā)表網(wǎng)頁(用Microsoft FrontPage) — 直到 —你更改一下permalinks(例如,對于關(guān)于日期的種類,我喜歡/2005/04/等等)。我通常像那些問及permalinks等等的人建議那種形式的URI,因為那是w3c推薦的方法(看看http://www.w3.org/Provider/Style/URI )。 現(xiàn)在問題在于FrontPage使用.htaccess文件(WordPress mod_rewrite規(guī)則必須訪問這個文件)它的"發(fā)表"和 "網(wǎng)頁作者" 設(shè)置。一旦WordPress mod_rewrite代碼被添加到那個文件中,兩種情況會發(fā)生—permalinks不再運行,F(xiàn)rontpage服務(wù)器擴展也損壞了。
我嘗試了無數(shù)的方法,來試圖解決這個問題,包括試著使用rewrite規(guī)則,"忽視"FrontPage使用的%{HTTP_USERAGENT)%,使用一個第二個的AccessFilename .wpaccess to the httpd.conf 文件,以及許多其它的內(nèi)容,沒有什么部件能夠使FrontPage和管理的使用,與WordPress中的permalinks能夠同時使用。
解決辦法事實上非常簡單,我意外地發(fā)現(xiàn)了這個解決辦法。
如果你使用或者想要在WordPress中使用FrontPage(或者如果你的主機軟件包先前就配置為這樣的),你可能要在你的服務(wù)器上完成以下的步驟,或者讓你的主機公司為你完成這些步驟。 Microsoft FrontPage 創(chuàng)建了以下的目錄
_vti_bin
嵌套在里面了,它創(chuàng)建了
_vti_adm
和
_vti_aut
除了在你的站點(或者WordPress)根文件夾所有的這些目錄中,你會找到額外的.htaccess文件。
在這些三個目錄以及在根目錄上,在所有的.htaccess文件上面,你只要添加一行:
選項 +FollowSymlinks
其中每一個可能有或者還沒有這一行
選項沒有
編輯并且保存每個.htaccess文件,你便完成了?,F(xiàn)在一切都運行得非常的好,包括FrontPage,和你選擇的permalinks。
最后的一個記錄[ ]
在一個個人記錄中,我喜歡使用Frontpage來管理/維護站點,大概在’96,我就開始使用Frontpage了,一直到現(xiàn)在,因為我大多數(shù)的工作都是UNIX服務(wù)器上完成的,不管怎么說我配置了這個來使用外部編輯器來編輯所有的內(nèi)容,包括對于php文件的Zend Studio,關(guān)于樣式表的Bradbury TopStyle,關(guān)于圖像的Adobe ImageReady/Photoshop等等。我或多或少只將Frontpage作為一個方面的方式來管理站點和訪問所有的內(nèi)容,等等。 然后當(dāng)我點擊任何應(yīng)用軟件中的"保存" 按鈕的時候,按鈕就會使Frontpage將任何的變化直接地保存到服務(wù)器上,而不需要FTP’ing文件,等等。它的確能夠幫助許多過程快速地完成,permalink損壞后,去年一年左右,我的確決定情況地不穩(wěn)定,因為我不需要使用permalink或者不需要使用Fontpage,或者繼續(xù)重新安裝FP擴展。一方面我找到了一個方式來為我"運行的" 站點制作一個.htaccess ,然后在我做其它的事的時候,將它更改問FP .htaccess (permalinks 當(dāng)然不會運轉(zhuǎn)), 不管哪種方法都是一件令人勞苦的事情。
這個在大多數(shù)的FP版本以及如今使用的大多數(shù)的擴展的unix版本上應(yīng)該能夠運行。 --Chradil 2006年17時24分 (格林尼治標(biāo)準(zhǔn)時間)
長的 Permalinks[ ]
當(dāng)你在一封電子郵件中使用額外長的permalinks并且將permalinks發(fā)表到評論和聊天中時候,一些長的permalinks"就被砍斷了"或者只有permalinks上的第一個部分,被真正地看成是一個鏈接,其它的部分會被看成是文本。下面有一個例子。
結(jié)果會是:
點擊一個較低的鏈接,用戶會得到一個404網(wǎng)頁沒有發(fā)現(xiàn)的錯誤。如果你有使用很長的permalink文章標(biāo)題的傾向,采取以下的步驟來防止這個問題的發(fā)生。
1.核實一下你真的在使用Permalinks。
2.編輯你的.htaccess文件并且添加以下的內(nèi)容:
RewriteRule ^post/([0-9]+)?/?([0-9]+)?/?$ /index.php?p=$1&page=$2 [QSA]
3.給它測試一下。找到文章的ID數(shù)字,在你的瀏覽器上輸入以下的內(nèi)容(和你的信息),而且你應(yīng)該再次導(dǎo)向你的文章:
http://yourdomain.example.com/post/(the ID #)
大多數(shù)電子郵件軟件并不會切斷由angle-brackets (< and >)描繪的URLs,這一點也很值得注意,因此當(dāng)你在電子郵件中粘貼URLs的時候,你應(yīng)該將URLs寫作:
此外,一些相當(dāng)好的電子郵件clients,在你編寫一個純文本的電子郵件的時候,給你提供一個"預(yù)先格式"電子郵件。粘貼鏈接的時候,使用"預(yù)先格式"選項,會迫使電子郵件client在鏈接中不插入換行符。
解決其它問題[ ]
如果你的.htaccess的產(chǎn)生是正確的,但是Permalinks不能運行,下面的內(nèi)容可能是一個問題。如果問題繼續(xù)存在,在WordPress論壇的中發(fā)表一個短信 怎樣分段。
- AllowOverride 沒有被激活
- 你的服務(wù)器也許沒有激活A(yù)llowOverride指示。如果AllowOverride指示在你的Apache httpd.config文件中設(shè)置為None,那么.htaccess文件便被完全地忽略了。在這種情況下,服務(wù)器甚至不會嘗試閱讀文件系統(tǒng)中的.htaccess文件。當(dāng)這個指示被設(shè)置為All的時候,那么任何擁有.htaccessContext的,都允許在.htaccess文件中。httpd.config中激活的AllowOverride指示的例子:
<Directory /> Options FollowSymLinks AllowOverride All </Directory>
你也可能要在你的文件根上激活A(yù)llowOverride指示:
<Directory /var/www/html> # ... other directives... AllowOverride All </Directory>
- 你也可能要為站點更改AllowOverride設(shè)置。這當(dāng)然是使用Mac OS X服務(wù)器時,發(fā)生的情況,當(dāng)時也可能在其它的系統(tǒng)上也適用。通常你可以在/etc/httpd/sites/中找到站點的配置文件。
- 如果你不想將AllowOverride設(shè)置為所有的(如上面的那樣)那么你的AllowOverride 列表上必須包括FileInfo指示。你必須重新地啟動你的Apache 服務(wù)器使任何的httpd.config文件更改起效,閱讀關(guān)于Apache Core 特色。
- 導(dǎo)航到的頁面不能運行:有時候?qū)Ш降降诙€(或者下一個)文章的頁面,可能并不象期望地那樣能夠運行。你的網(wǎng)頁可能使用下面的這些URIs之一產(chǎn)生了到另一個網(wǎng)頁的鏈接:
http://www.example.com/page/2/ http://www.example.name/category/categoryname/page/2/ http://www.example/year/month/day/page/2/ http://www.example/year/month/page/2/
- 點擊那些鏈接中的一個的結(jié)果是網(wǎng)頁載入了所有的邊緣內(nèi)容(頁眉,頁腳,工具條),卻沒有載入帶有文章的網(wǎng)頁,或出現(xiàn)一個錯誤信息:"對不起,沒有文章匹配那個標(biāo)準(zhǔn)。"
- 這是由于WordPress產(chǎn)生在.htaccess文件中的一個小干擾。要解決這個問題,刪除你的.htaccess文件的內(nèi)容,并且重新地創(chuàng)建這個文件。
- 在控制面板上,轉(zhuǎn)到管理 > 文件(編輯文件的更多信息)
- 點擊鏈接到你的 .htaccess 文件來編輯它的內(nèi)容
- 復(fù)制文件的內(nèi)容并且將它粘貼到文本編輯器中的一個文本文件中。這是一個預(yù)防措施,以防止你的.htaccess文件有redirects的手工條目,或者對其它的便利的 htaccess tricks 的拒絕。
- 從你的.htaccess文件中刪除所有的內(nèi)容,并且點擊更新文件按鈕。
- 在控制面板上, 轉(zhuǎn)向選項 > Permalinks。
- 點擊更新Permalink結(jié)構(gòu)按鈕來為你的permalinks產(chǎn)生新的rewrite規(guī)則。
- 使用一個先前斷掉的鏈接來測試結(jié)果。
- 將任何的手工htaccess條目返回到你的文件 (將手工htaccess 條目放在# BEGIN WordPress之前或者放在 # END WordPress 行之后。)
- 通過從服務(wù)器中刪除.htaccess文件,創(chuàng)建一個新的空.htaccess文件,將文件權(quán)限改為666,然后在選項 > Permalinks通過點擊更新Permalinks結(jié)構(gòu)按鈕,產(chǎn)生一組新的htaccess規(guī)則,你可以執(zhí)行相似的步驟。
- 如果這樣做仍然不起作用,看看WordPress支持論壇,特別是這篇支持的文章。
- 文章的Permalinks 不能運行
- 如果你試著導(dǎo)航到一個最新創(chuàng)建的網(wǎng)頁但是遇到了一個錯誤,你可能需要更新你的Permalink 結(jié)構(gòu)。記住每次你給WordPress添加了一個新的靜態(tài)的網(wǎng)頁,新的規(guī)則必須產(chǎn)生并且更新到.htaccess (WordPress 1.X)或者更新到內(nèi)部的rewrites 數(shù)組(WordPress 2.X)。
- 到 Ultimate Tag Warrior tag pages 的permalinks不能夠運行
- 如果你正在WordPress2.X上使用UltimateTagWarrior插件的時候,你在本地標(biāo)簽URLs上得到了404錯誤,那是因為由WordPress產(chǎn)生的內(nèi)在的rewrites,過度地貪婪了,在UTW的rewrite規(guī)則有機會之前,便得到了調(diào)用。只有使用一個自定義的permalink結(jié)構(gòu)(像 /%postname%/)時,通常才會出現(xiàn)這樣的情況。要解決這個問題, 轉(zhuǎn)變你的 Permalink 結(jié)構(gòu)為 "以日期和名稱為基礎(chǔ)" 或者改進 UTW 插件將UTW rewrites放置到內(nèi)部rewrites數(shù)組的上端。 關(guān)于這個的更多的信息。
- Permalinks 在運行但是沒有頁面返回
- 有些版本的PHP4.4x和5.5x,當(dāng)與一些版本的Apache2.x用在一起的時候,會有一個程序錯誤,致使mod_rewrite不能執(zhí)行。更多信息可以查看http://bugs.php.net/bug.php?id=35096 和http://bugs.php.net/bug.php?id=35059.
更多的幫助[ ]
如果這些步驟都不起作用,在Codex, 發(fā)現(xiàn)并解決故障, 或者在[1]上搜索你的問題。
小貼士和 Tricks[ ]
使你的文章以 .html 結(jié)束[ ]
有一個簡單的方法可以使你的文章以一個.html結(jié)束,使用以上的結(jié)構(gòu)標(biāo)簽。遵循適當(dāng)?shù)亟Y(jié)束permalinks的例子,你可以有一個擁有這個規(guī)則的網(wǎng)頁http://yoursite.com/2006/01/01/happy-newyear.html:
/%year%/%monthnum%/%day%/%postname%.html
注意這個不會產(chǎn)生靜態(tài)的.html文件。它只是添加.html擴展,網(wǎng)頁還是動態(tài)地產(chǎn)生了。SEO受益于這個是有爭議的,但是如果你需要從WordPress中遷移出去,這個還是有用的,因為網(wǎng)頁可以輕易地被設(shè)置為靜態(tài)的,并且保持它們的URL結(jié)構(gòu)。
WordPress2.3之前的版本缺少規(guī)范的URLs,使得添加.html變得有用(迫使URL變得規(guī)范)?,F(xiàn)在它提供了有限的,如果有的話,SEO好處(查看外部資源,得到更加深入的分析)。
外部資源[ ]
- 用這個WordPress插件瀏覽你所有的permalinks 和 rewrites 。
- 用Permalinks美化你的URLs
- Apache htaccess 代碼例子 — 剪貼并且在這兒粘貼正確的.htaccess代碼。
- 怎樣配置WordPress來為Permalinks創(chuàng)建搜索引擎有好的URLs
- URL Rewriting 指南 — the whats,方式和理由
- 使用Permalinks推進搜索引擎最優(yōu)化
- 了解 WordPress Permalinks
- mod_rewrite 和 htaccess 幫助論壇
- 用IIS using .htaccess清潔 Permalinks
- 用lightpd rewriting URL
- 有Lighttpd的 Permalinks — 使用 mod_magnet; 在1.4.2+上運行。