Ubuntu Apache 配置
2018.4.9
Ubuntu Apache 配置
承 LAMP 搭建篇。
參考 電子工業出版社, Ubuntu完美應用, 第3版, 及各種大神網上的帖子, 謝謝!
一. 序言
以前被各種系統的Apache 配置給弄懵了, 但探索了這麽多, 當別人給你正確引導時, 接受的就快了。 上篇以說到安裝Apache, 並啟動成功, 這次直接聊聊配置。
二. Apache 配置
# Apache 配置目錄
ll etc/apache2
你會看到。
除了
. apache2.conf
Apache 的主配置文件, 輸入命令
sudo more etc/apache2/apache2.conf
(就可以查看配置文件)
Tip: more是一個用來分頁顯示大文本文件的命令,它默認是內置在各個Linux發行版中的, 按space 空格鍵翻頁。
# Include module configuration:
IncludeOptional mods-enabled/*.load # 動態模塊的加載
IncludeOptional
mods-enabled/*.conf #
# Include list of ports to listen on
Include ports.conf # Apache 監聽端口配置
# Include generic snippets of statements
IncludeOptional conf-enabled/*.conf # Apache 一般性的配置
# Include the virtual host configurations:
IncludeOptional sites-enabled/*.conf # 虛擬主機的配置
Tip: Include 引用, 就是將文件內容放到該文件。
. conf-available
Apache 的全局配置文件, 但默認不會生效, 只有conf-enabled 目錄下的文件指向conf-available 目錄下哪個文件, 鏈接哪個文件就生效。
Tip: -> 箭頭就是鏈接到哪個文件。 關鍵字 鏈接, 可科普一下。
available 可獲得的, enabled 激活的, 能夠使用的
. envvars
Apache 環境變量設置, 無需修改。
. magic
文件, 其中包含mod_mime_magic 模塊的數據, 也是無需修改。
. mods-available
模塊的配置及加載文件, 也是需要mods-enabled 鏈接才會生效。 若要加載某項模塊的功能, 只需把mods-available 裏面對應的模塊配置文件在mods-enabled 目錄下建立一個符號鏈接,
重啟Apache 即可生效。
. ports.conf
文件指定Apache 監聽TCP 端口, 默認80 端口。
. site-available
對虛擬主機做配置, 如果存在多個虛擬主機, 則可以分別在文件中配置。
. site-enabled
啟用哪些虛擬主機就把哪些對應在site-available 目錄下的配置文件在該目錄下建立符號鏈接, 重啟Apache 生效。
三. Apache 更改根目錄
1) 000-default.conf 配置文件
sudo vim /etc/apache2/sites-enabled/000-default.conf
Tip: 按Tab 鍵自動補全文件或文件夾名, 連按兩下會出現前綴相同的名字, 若沒有效果繼續輸入, 是因為前邊的名字重復了。
<VirtualHost *:80> # 虛擬主機, 端口80
#ServerName www.example.com # 虛擬主機的域名
ServerAdmin webmaster@localhost # 虛擬主機管理員郵件地址
DocumentRoot /home/loseself/www # 虛擬主機的根目錄
這是默認的虛擬主機配置文件, 後面還可以添加多個虛擬主機, 也就是域名站點配置。
需要做的是: 更改DocumentRoot 後面的根目錄, 改成你自己想要放入的目錄, 若不想改根目錄的話, 那就把默認的目錄更改一下權限, 一邊以後可以新建文件, 之前的根目錄是 /var/www/html, 被我改成自己的了, 放在home 下。
2) apache2.conf
光是該了1 步驟提到的根目錄還不行, 還需要更改Apache 主配置文件中的內容。
sudo vim /etc/apache2/apache2.conf
<Directory /home/loseself/www> # 對你設置的根目錄配置並生效
Options Indexes FollowSymLinks # 允許顯示目錄列表
AllowOverride All # 允許重寫apache默認配置
Require all granted
</Directory>
. 把之前的/var/www/html 換成你自己改過的根目錄。
. 然後 AllowOverride None, 把None 改成 All, 允許重寫apache默認配置, 讀取.htaccess 文件。
. 重啟Apache 服務即可。
sudo systemctl start apache2
啟 Apache 域名站點配置。
Ubuntu Apache 配置