2015-07-11 176 views
0

我想製作一個Wordpress網站的靜態HTML副本,我可以上傳到其他地方,比如Github頁面。避免wget將index.html附加到鏈接

我使用這個命令:

選項1:

wget -k -r -l 1000 -p -N -F -nH -P ./website http://example.com/website 

它下載整個網站等,但我在這裏主要的問題是,它增加了「的index.html」到每一個環節。我理解需要在本地查看該網站,但不需要靜態網站主機。

那麼有沒有辦法告訴wget不要修改所有鏈接並將index.html添加到它們?

例如它創建:

<a href="blog/2015/07/11/hello-world/index.html">Hello world!</a> 

在默認Worpress的Hello World崗位。

選項2:

使用鏡像與-k命令轉換鏈接:

wget -E -m -p -F -nH -P ./website http://example.com/website 

然後,它會不適用的index.html並保留域名。

但是它也爬到http://example.com並索引所有內容。我不要那個。我希望/網站是根(因爲WordPress的多站點)。我該如何解決?

我也希望它重寫主機名而不是剝離它或保留它。所以它應該從http://example.com/website/(Wordpress多站點)到http://example.org/這是可能的還是我需要在下載後對所有文件運行sed/awk?

回答

0

遇到了類似的問題,用sed對其進行後處理解決。

這將替換「通過/」 /index.html所有出現如上的評論表明,重定向occurrs無論如何,如果最後的斜線缺,我添加它=)

find ./ -type f -exec sed -i -e "s/\/index\.html'/\/\'/g" {} \; 

而且這個龐然大物內容替換所有出現的通過「的index.html」或「的index.html」(或「的index.html‘或’的index.html」。)「」:

find ./ -type f -exec sed -i -e "s/['\\\"]index\.html['\\\"]/\\\".\\\"/g" {} \; 

你可以看看什麼戰略經濟對話與做你的比賽例如與此命令的index.html:

sed -n "s/['\\\"]index\.html['\\\"]/'\/'/p" index.html 

希望能找到這個有用