Apache
apache的基本配置
1。apache 的默認發佈文件
index.html
2.apache的配置文件
/etc/httpd/conf/httpd.conf
/etc/httpd/conf.d/*.conf
3.apache的默認發佈目錄
/var/www/html
4.apache默認端口
80
apache基本配置
1.修改默認發佈文件
vim /etc/httpd/conf/httpd.conf
2.修改默認發佈目錄
##當selinux狀態爲disabled
vim /etc/httpd/conf/httpd.conf
##當selinux狀態爲enforcing
vim /etc/httpd/conf/httpd.conf
semanage fcontext -a -t httpd_sys_content_t '/westos(/.*)?' ##配置安全上下文
restorecon -RvvF /westos/
systemctl restart httpd.service ##重啓服務
mkdir /westos/www/tset -p ##新建默認發佈目錄
vim /westos/www/tset/westos.html ##新建默認發佈文件
**測試
3.控制訪問
設定IP的訪問
vim /etc/httpd/conf/httpd.conf
允許除了117主機的任何主機訪問
只允許65主機訪問
設定用戶訪問
htpasswd -cm /etc/httpd/accessuser admin ##設置用戶admin和密碼
vim /etc/httpd/conf/httpd.conf ##修改配置文件
<Directory "/var/www/html/admin">
AuthUserFile /etc/httpd/accessuser ##用戶認證文件
AuthName "input name and password" ##用戶認證提示信息
Authtype basic ##認證類型
Require valid-user ##用戶認證,認證文件裏所有用戶都可以訪問
[ Require user admin ] ##只允許admin用戶
</Directory>
測試
6.Apache語言支持
*HTML語言默認支持
*PHP語言
yum install php -y ##安裝PHP服務
mkdir /var/www/html/cgi ##創建默認發佈目錄
vim index.cgi ##編寫默認發佈文件
內容
chmod +x index.cgi ##給文件可執行權限
vim /etc/httpd/conf/httpd.conf
systemctl restart httpd ##重啓服務
selinux 設置爲disabled
測試
7.Apache虛擬主機
*可以讓一臺Apache服務器在訪問不同域名的時候顯示不同主頁
*建立測試頁
(1)vim /etc/httpd/conf.d/default.conf ##未指定的域名訪問default
<Virtualhost _default_:80> ##虛擬主機開啓80端口
DocumentRoot "/var/www/html" ##虛擬主機默認發佈目錄
CustomLog "logs/default.log" combined ##虛擬主機日誌
</Virtualhost>
(2)vim /etc/httpd/conf.d/new.conf ##指定域名new.westos.com訪問指定默認目錄
vim /etc/httpd/conf.d/money.conf ##指定域名money.westos.com訪問指定默認目錄
內容
<Virtualhost *:80>
ServerName "new.westos.com"
DocumentRoot "/var/www/virtual/new.westos.com/html"
CustomLog "logs/new.log" combined
</Virtualhost>
<Directory "/var/www/virtual/new.westos.com/html"> ##默認發佈目錄訪問
Require all granted
</Directory>
vim /etc/hosts ##配置解析
配置
yum install mod_ssl crypto-utils -y ##安裝服務
genkey www.westos.com ##生成密鑰和密匙
/etc/pki/tls/private/www.westos.com.key
/etc/pki/tls/certs/www.westos.com.crt
生成證書位置
選擇密鑰大小
生成隨機數
拒絕加密私鑰
爲服務器提供合適身份
vim /etc/httpd/conf.d/login.conf
<Virtualhost *:443>
ServerName "login.westos.com"
DocumentRoot "/var/www/virtual/login.westos.com/html" ##虛擬主機默認發佈目錄
CustomLog "logs/login.log" combined
SSLEngine on ##開啓HTTPS功能
SSLCertificateFile /etc/pki/tls/certs/www.westos.com.crt ##證書
SSLCertificateKeyFile /etc/pki/tls/private/www.westos.com.key ##密鑰
</Virtualhost>
<Directory "/var/www/virtual/login.westos.com/html"> ##默認發佈目錄
Require all granted
</Directory>
<Virtualhost *:80> ##網頁重寫實現自動訪問HTTPS
ServerName "login.westos.com"
RewriteEngine on
RewriteRule ^(/.*)$ https://%{HTTP_HOST}$1 [redirect=301]
</Virtualhost>
* ^(/.*)$ 客戶主機在地址欄中寫入所有字符 測試中的login.westos.com
* https:// 定向成爲訪問協議
*%{HTTP_HOST} 客戶請求主機
*$1 表示^(/.*)$
*[redirect=301] 臨時重定向 302永久重定向
mkdir /var/www/virtual/login.westos.com/html -p ##新建測試目錄
vim /var/www/virtual/login.westos.com/html/index.html
vim /etc/hosts ##配置解析