我係統上 XAMPP 安裝在 /opt/lampp 目錄下,於是本地服務器根目錄處在 /opt/lampp/htdocs,如果不做更改的話,需要把文件放到 htdocs 裏才能通過 http://localhost/ 訪問到,這會有一個問題,/opt 目錄特殊,在其下新建的文件均有權限上的限制,需要 sudo 才能編輯,非常不便。
另外,Eclipse 默認的 Workspace 目錄是建在用戶主目錄下的,即 /home/username/workspace,所以,如果 workspace 目錄能享受本地服務器根目錄待遇就沒什麼問題了。
解決辦法有幾種,但最爲方便,也有助於分離不同項目,便於管理、調試的方法是設置虛擬主機 – 我想賣虛擬主機的人們肯定很熟悉這個。
打開 httpd.conf 文件,在末尾加入以下:
<VirtualHost *:80>
ServerName localhost
DocumentRoot /opt/lampp/htdocs
</VirtualHost>
<VirtualHost *:80>
ServerName ec.localhost
DocumentRoot /home/sam/workspace
<Directory /home/sam/workspace>
Require all granted
AllowOverride all
Order Allow,Deny
Allow from all
</Directory>
</VirtualHost>
之後打開 /etc/hosts 文件,加入:
127.0.0.1 ec.localhost
將 ec.localhost 域名解析到 127.0.0.1 上。
這時訪問 ec.localhost 就沒問題了。
更新
2012.12.28 Fri
另一個辦法,可以達到相似的目的,並且要比上述辦法簡單,就是利用 Apache 配置中的 Alias 功能。
打開 httpd.conf 文件,查找 </Directory>
,添加以下內容:
Alias /ec /home/sam/ec
重啓 Apache,然後我們就可以通過 localhost/ec 來訪問 /home/sam/ec 目錄了。當然,如果僅這樣設置就開始訪問 localhost/ec 會顯示 403 錯誤,表示沒有權限訪問,所以我們還要爲其設置權限:
<Directory /home/sam/ec>
Require all granted
Order allow,deny
Allow from all
</Directory>
將上述語句加到 Alias 語句後,保存 httpd.conf 並重啓 Apache 服務器。