Ubuntu Apache配置及開啓mod_rewrite模塊

剛剛將服務器系統從CentOS換成Ubuntu,將MySQL,Apache,PHP和Wordpress安裝好後,發現打開主頁是正常的,可是 打開文章頁面時出現錯誤。由於使用了自定義的固定連接設置,那天然是Apache的rewrite功能出現了問題。打開/etc/apache2這個目錄 準備修改配置文件時,發現之前用的httpd.conf這個文件是空的。反卻是多了不少其餘的目錄。那麼Google吧。 html

Apache配置說明查看 https://help.ubuntu.com/12.04/serverguide/httpd.html apache

其中幾個文件及目錄的做用是: ubuntu

apache2.conf:Apache的主要配置文件,包含全局配置。 conf.d:Apache全局配置文件,其餘須要使用Apache的包能夠在這個目錄下建立文件或者連接。 

envvars:Apache2環境變量設置。 

httpd.conf:遺留的Apache2主要配置文件。這個文件是空的,其中的配置選項都轉移到其餘配置文件裏了。
這個文件能夠進行Apache全局配置。 
mods-available:這個目錄包含模塊和模塊配置文件,不是全部的模塊都有配置文件。 

mods-enabled:持有/etc/apache2/mods-available目錄下文件的連接,當該目錄下有一個模塊文件和其配置文件,那麼Apache重啓後該模塊將生效。 

ports.conf:配置Apache監聽的端口。 

sites-available:這個目錄包含Apache虛擬主機的配置文件。虛擬主機容許Apache配置多個站點併爲每一個站點配置不一樣的參數。 

sites-enabled:持有/etc/apache2/sites-available目錄下文件的連接。當Apache重啓後,該目錄中包含的站點將會被激活。

結合以上配置說明能夠發現Apache的配置文件很是的模塊化,啓用模塊、虛擬主機都很是的簡單。 vim

下面是啓用mod_rewrite模塊的方法。 服務器

第一種方式: ide

sudo a2enmod rewrite

第二種方式: 模塊化

sudo ln -s /etc/apache2 /mods-available/rewrite.load /etc/apache2 /mods-enabled/rewrite.load

無論使用哪一種方法,都是在/etc/apache2/mods-enabled這個目錄下面創建了一個連接,只要重啓服務器以後就能夠生效。 固然要使rewrite生效,還須要修改額外的配置: ui

sudo vim /etc/apache2 /sites-enabled/ 000- default

將其中的 AllowOverride None 修改成 AllowOverride All,而後重啓服務器便可。 spa

sudo /etc/init.d/apache2 restart
相關文章
相關標籤/搜索