Apache常見問題
撰寫中....
  1. 問題:
  2. Forbidden

    You don't have permission to access /xxxxxxx/ on this server.


    Apache/1.3.22 Server at xxx.xxx.xxx Port 80

    很熟悉吧!這個笨問題已經存在很久了
    以下是我測試的結果:
    我們最常碰到的問題是沒有存取的權限,不要被Apache的錯誤訊息給騙了,
    Apache控制的讀取的並非一般的讀取(r),而是(rx)
    因此要使所有的人有執行的的權限,例如一般使用者可以使用其home
    目錄下public_html來架個人網站,由於其home目錄下限制其它人
    不可以存取,為了使別人上web站後可以連線到個人目錄下的public_html,
    但又要保持安全性,則家目錄及public_html的權限設定如下
    chmod 711 home_directory #保持可以執行但無法讀取  
    chmod 755 public_html    #保持rx
    *最重要的權限是other其它可以均設為0也無所謂
    為什麼home directory權限是711
    user(擁有者)是7 你不認為擁有者必須有所有的權限嗎?
    group(群組)是1 0也可以
    other(其它)是1 這裡最重要1,如果你設為5(rx)小心資料全部被看光

    為什麼public_html權限是755
    user(擁有者)是7 同上,如果你不高興設為7那使用者常會來煩你
    group(群組)是5 0也可以
    other(其它)是5 5(rx),如果只設r你試試看不行就是不行
  3. 簡單的存取控制:

  4. 我們不想某一個網頁隨便被別入進入,希望使用名字-密碼來限制
    密碼驗證,當某人要進入某網頁必須使用該目錄中.htaccess的設定來認證
    如果你要限制別人觀看特定的網頁目錄可以使用下面的方法
    .htaccess
    在apache設定的目錄,編輯這個檔案
    AuthName "xxx"       你給的名字
    AuthType BASIC    
    AuthUserFile  xxx  密碼檔所在是
    htpasswd
    htpasswd -nm 檔名   使用者名稱
    httpd.conf
    設定檔中必須有
    AccessFileName .htaccess
    及設定該目錄
    <Directory xxxx>
    Options Indexes FollowSymLinks
    AllowOverride all
    </Directory>
  5. 目錄設定檔
  6. 這個同2.中所提的,我們在每一個網頁的目錄都可另外設一個設定檔(.htaccess)
    然而如果沒有AllowOverride
  7. 分享samba 中的目錄
  8. 有時候想要在家裡透過瀏覽器查看公司的檔案
  9. 使用者網頁/etc/httpd/conf/httpd.conf 中設定Userdir public_html
  10. ~使用者名稱,對應到該使用者在linux的家目錄


  11. 顯示目錄內容及檔案資訊
  12. AddDefaultCharset ISO-8859-1(中文顯示亂碼,雖然html內已經設為big5)
  13. 這是apache 2.0所新增的,但是會造成中文無法顯示,最簡單的解決方法是 前面加#將這個設定略過

  14. 名稱虛擬主機 -一個ip有不同的名稱