
我正在嘗試為 facebook 應用程式設定開發環境,並且我正在遵循官方 Hiroku 指南來設定本地開發的所有內容(https://devcenter.heroku.com/articles/facebook#create_an_app)。我得到了一切,除了一步:
Apache 設定環境
如果您使用 Apache 運行應用程序,則可以使用 SetEnv 指令為本機應用程式的 VirtualHost 設定環境變數。例如: ...
任何人都可以澄清這一步驟,並解釋我在做什麼,並告訴我這個 VirtualHost 檔案在哪裡,因為我搜尋了整個 /opt/lampp/ 資料夾,但沒有一個。感謝轉發
答案1
免責聲明:我還沒有讀過這篇 Hiroku 指南,但我的本地 Ubuntu 伺服器上有很多正常的本地網站,這些網站改編自標準的 Ubuntu 10.04 LTS。
中有一個目錄包含所有 apache 配置/etc/apache2
。在該目錄下,有4個子目錄,兩個用於站點,兩個用於模組;每個都有一個用於所有可用的內容,一個僅用於已啟用的內容。這些被命名為:
sites-available sites-enabled
mods-available mods-enabled
你想看的是sites-enabled
.在這個資料夾中,我認為應該有一個名為000-default
.
在這個檔案中,可以有許多「VirtualHost」條目,我相信預設只有一個條目,用於設定 apache 的主 Web 目錄。很多人只是在這個下面添加目錄,然後通過在URL中添加目錄來訪問。但是您可以在任何目錄中新增任意數量的虛擬主機。
例如,假設您有一個名為 abc.com 的網域,並且您希望在本機上使用該網域。您可以在用於開發的本機工作站的主機檔案(位於/etc/hosts
)中為 abc.com 建立一個別名(暫時的,因為這將搶佔外部 abc.com),以將其重定向到伺服器(透過名稱或IP,或使用本機主機(如果位於同一系統上)。
神奇的事情發生在 apache 的 000-default 檔案中,它將在其中尋找名為 abc.com 的 VirtualHost。
所以,假設您在目錄中有一個網站/var/www/abc.com
;然後你可以將這樣的內容加入到 apache 檔案中:
<VirtualHost *:80>
<Directory /var/www/abc.com>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
DocumentRoot /var/www/abc.com/
ServerName abc.com
</VirtualHost>
如果您想在不編輯localhost 的情況下處理本機檔案和遠端文件,您可以將本機檔案重新命名為abc.dev 之類的名稱,將其放入localhost 中,然後將apache 檔案從abc.com 變更為abc.dev 。然後,只需輸入http://abc.dev
瀏覽器的網址列(或只是 abc.dev)即可始終使用它。
如果您不熟悉主機文件並需要幫助,請告訴我,但這相當簡單,我不想在您可能已經知道的事情上浪費太多時間。
我希望我的解釋對您有所幫助,但如果沒有,請隨時要求詳細說明。