【美國加州 Yosemite National Park】優勝美地國家公園健行之一.迷人的秋日美景。飽覽山谷與Vernal Falls、Nevada Falls兩大瀑布

圖片
「一生必去」這4個字的最高等級用語,絕對可以用來形容美國加州的「優勝美地國家公園」(Yosemite National Park),相信沒有人會反對。因為它在世界上的地位,彷彿就是「大自然的大教堂」。
優勝美地國家公園(Yosemite National Park),是美國國家公園內極為閃耀的一顆明珠,地處加州東北部,內華達山脈的西麓,曾是印第安原住民阿瓦尼奇人(Ahwahneechee)的故鄉。公園的範圍橫跨加州中西部圖奧勒米縣(Tuolumne)、馬里波薩縣(Mariposa)和馬德拉縣(Madera)。優勝美地國家公園於於1984年被納入聯合國教科文組織(UNESCO)世界遺產,每年吸引4百萬來自世界各地的遊客前來觀光。
優勝美地國家公園內,有超過95%的土地被指定為原生地域(wilderness),為了要保護公園的原貌,美國總統林肯於1864年6月30日,將優勝美地谷蝴蝶林(Mariposa)內的美洲衫巨木林,設為美國的第一座州立公園。並且在「國家公園之父」約翰•繆爾(John Muir,1838~1914)這位作家、科學家、保育先知的倡議之下,於1890年成為第二座國家公園。它幾乎是全美甚至全球最受歡迎的國家公園。
公園內除了有四面絕壁的優勝美地山谷,還有充滿高山美景的圖奧勒米牧場,自然風光令人歎為觀止。而它的美和大遠遠超過一般人所暸解,公園的佔地面積超過1,169平方英哩/284,899 公頃,而其中最多遊客造訪的的優勝美地谷(Yosemite Valley),只佔了整個公園不到1%的面積。優勝美地國家公園主要有四大景區,呈F型分佈,分別是優勝美地谷(Yosemite Valley)、山頂的冰川點(Gracier Point)、北側的第奧嘉(Tioga Pass)以及南端的瓦沃納(Wawona)景區。這次的優勝美地之旅,只有北側的第奧嘉景區沒有造訪,那裡就留待下次不同季節再去造訪吧!

優勝美地山谷在上一次冰河時期被冰川覆蓋,山谷呈U字型,兩旁峭壁上到處可見由冰川切削過的痕跡,其中最有名的就是半圓頂(Half Dome),這顆巨岩是冰河時期所形成的,峰頂海拔2,693公尺,歷時8,700萬年,在地質與歷史上他就是個不折不扣的巨人。只要你在優勝美地國家公園內,走到比較高的地點,幾乎從任何地方,都可以看到它的身影,據說 North Face 品牌 logo 的…

Integrating OpenID & Clickpass Authentication in your Rails Application

OpenID is a service, framework, and protocol that is revolutionizing the realm of user authentication and identity services. Started in 2004 by Brad Fitzpatrick, OpenID is now a mature framework supported by major Internet organizations such as AOL, Google, IBM, Microsoft, VeriSign, and Yahoo. It offers a distributed, reliable, and open way for web sites to authenticate their users and saves web developers from the need to write yet another piece of authentication code.

要在每個使用過的網站建立新的帳號,感到疲累嗎?您總是避免上新網站,是否因為每個網站都要求您建立帳號和密碼? 您是否在電腦螢幕旁貼了一堆密碼提示?

OpenID 是一種開放技術標準,可解決所有這類問題。透過 OpenID 技術,您可以使用您的 OpenID 帳號隨意在不同的網站上登入或註冊!

在實作這個功能之前,我們需要安裝ruby-openid這個Ruby Gem以及acts_as_authenticated和restful_authentication這兩個Rails Plugin。

接下來我們要先建立openid的資料表並在現有的Users資料表中添加一個identity_url欄位。建立一個遷移檔來新增資料表,然後編輯這個遷移檔:

$ ruby script/generate migration CreateOpenidAuthentication

接下來再來建立一個UserOpenid模型,然後編輯這個新的遷移檔:

然後編輯UserOpenid Model:

接下來編輯#{RAILS_ROOT}/config/routes.rb,設定相關的路徑映射:

註:這裡面的controller必須視你自己的project來作設定,若配置錯誤將無法連線到OpenID Server端取得認證。

接下來建立一個OpenidsController並編輯內容:

$ ruby script/generate controller Openids

再來我們需要修改AccountController,在裡面添加一些處理OpenID登入的方法:

接下來編輯app/views/account/openid_login.html.erb視圖,讓使用者可以透過OpenID登入網站,添加下面的內容:

再來編輯app/views/openid/new.html.erb視圖,這是讓使用者添加OpenID帳號的頁面:

最後在#{RAILS_ROOT}/app/views/users/show視圖中添加下面的內容,用來顯示使用者已認證過的OpenID帳號:

現在使用者已經可以透過OpenID帳號來登入網站,接下來我們還可以使用Id Selector和Clickpass的服務來擴充我們的OpenID登入功能。首先我們要到 https://www.idselector.com/ 去使用OpenID申請一個帳號,然後只要將代碼貼到OpeniD的登入頁面即可,這裡我將下面的代碼貼到Application Layout中:






再來我們可以為Rails應用程式添加Clickpass登入功能,首先我們需要到 http://www.clickpass.com/ 申請帳號,然後切換到 Developer 控制台,輸入網站資料:


再來我們需要設定 OpenID 負責新增帳號的位置:

1. trust root 輸入你的網站網址
2. begin_openid_login 輸入http://你的網址/account/openid_authenticate 這個路徑
3. OpenID parameter label 輸入 openid_url
4. submission method 選擇 GET 方法


儲存設定之後,就可以把它提供的 button 語法貼到我們的#{RAILS_ROOT}/app/views/account/openid_login.html.erb 視圖裡面了。


再來我們需要設定 OpenID 負責整合帳號的位置:

這裡的 begin_add_openid_to_user URL 我們要輸入config/routes.rb檔案裡面所設定的http://你的網址/users/add_openid路徑,而 user_id label 只要輸入 Username 即可。另外底下的 callback url 也要設定為 http://你的網址/users/add_openid。

儲存設定以後,再將下面顯示的 button 語法貼到 app/views/openid/new.html.erb 視圖中;如此一來就完成 Clickpass 的整合了!

這是二年前做的東西了,以上的實作過程都是用我自己的Rails Project作為例子,概念僅供參考,若有需要請依照你自己的專案視圖作相關的配置。(OpenID登入可以在localhost作測試,Clickpass則需要連線到相對應的網域名稱才能作登入測試)。

下面是一些 OpenID 的相關資源 :

OpenID 網站

Yahoo! OpenID

OpenID for Rails

8 OpenID Resources for Rails Developers

Railscasts - OpenID Authentication

Authlogic and OpenID on Rails

OpenID and Rails: Authentication 2.0

熱門文章

[轉載] 洛克菲勒寫給兒子的38封信(全文)

2013.5.25~26【新阿溪縱走】眠月線鐵道線探勘。順登松山、萬歲山、小笠原山、對高岳

2018, Jan 14【高雄】旗津半日遊&不老溫泉度假村泡湯&南橫公路梅山口賞梅花

斗六市70年老店 山姆紅燒羊肉爐

[平成26年12月9日]冬の山旅日記~日帰り雪山ハイク!!蔵王温泉、銀山温泉、日本百名山・蔵王山(熊との遭遇)

2012 アルプスの夏:飛騨・北阿爾卑斯山脈南部の焼岳/槍・穂高連峰/表銀座単独縦走記錄。Day5 穗高岳山莊~涸沢岳~北穂高岳~飛騨泣き~A沢のコル~長谷川ピーク~大キレット~南岳小屋

【南投信義】玉山國家公園散步★塔塔加六山之三:鹿林山、麟趾山、鹿林前山&八通關古道之雲龍瀑布健行

文章列表

聯絡我

名稱

以電子郵件傳送 *

訊息 *