linux server apahce2.4.X userdir 設定

為了讓伺服器上的使用者可以有自已的網站,管理者可以設定 apache 網頁伺服器,開啟使用者目錄(userdir)的模組,讓使用者可以在自已的帳號目錄裏,建立特定名稱的資料夾,之後就可以在這裏放入網頁檔案,提供網站供人存取。

apache 是主流網站伺服器之一,每隔一段時間就會修正功能,有些設定會跟著改變,這次要說的是 apache2.4.7 版(開始變動時間不可考),要開放使用者目錄的方式有一點變動。

作業環境:
Ubuntu 14.04.2 server LTS
apache2
php
使用者:hahaha
IP:1.2.3.4

更動 /etc/apache2/mods-enable/php5.conf
把 mod_userdir.c 的段落中
php_admin_flag engine Off 改成 php_admin_flag engine On
或是整段註解掉

更動 /etc/apache2/mods-enable/userdir.conf
把 UserDir disabled root  改成 UserDir disabled
加入 UserDir enabled hahaha [使用者名稱]  [使用者名稱2] …
Limit GET POST OPTIONS 段落中有 Require all granted
LimitExcept GET POST OPTIONS 段落中有 Require all denied
改好以後會長得像這個樣子

 <IfModule mod_userdir.c>
         UserDir web
         UserDir disabled root
         UserDir enabled hahaha

         <Directory /home/*/web>
                 AllowOverride FileInfo AuthConfig Limit Indexes
                 #Options MultiViews Indexes FollowSymLinks IncludesNoExec
                 Options Indexes FollowSymLinks IncludesNoExec
                 <Limit GET POST OPTIONS>
                         Require all granted
                 </Limit>
                 <LimitExcept GET POST OPTIONS>
                         Require all denied
                 </LimitExcept>
         </Directory>
 </IfModule>



啟用 userdir 模組
cd /etc/apache2/mods-enable/
sudo ln -s ../mods-available/userdir.conf userdir.conf
sudo ln -s ../mods-available/userdir.conf userdir.load

如果你很不愛那個礙眼的 "~"
設定 cd /etc/apache2/mods-enable/alias.conf
加入這個
# config for userdir to remove "~"
Alias /hahaha "/home/hahaha/public_html"
請特別注意,必須是結尾的"/"必須前後對照,"/"一個有一個沒有可是啟動不起來的

然後重新啟動網站伺服器 ( sudo service apache2 restart ) 以便套用新的設定

接著,在 hahaha 使用者的根目錄裏建一個 public_html 的目錄(mkdir public_html),在裏面放入網頁的檔案 index.html (/home/hahaha/public_html/index.html),連到你的伺服器 ip ,連到網址 http://1.2.3.4/~hahaha 就能看到網頁了。

收工。

留言

這個網誌中的熱門文章

使用 Excel 計算2個地點之間的直線距離

LINE 儲存的檔案傳到 email 不方便 很不方便 非常不方便 但是有解的筆記

Excel 巨集合併多個 Excel 檔案