【基础部分】之apache配置与应用
????????? apache服務
修改主機名為 apacheserver.example.com
http:超文本傳輸協議
如何查看服務默認開啟端口
cat /etc/services | grep http
netstat -antlpe | grep http
1.先安裝httpd
開啟httpd
允許通過防火墻
firewall-cmd --permanent --add-service=http
firewall-cmd --reload
通過火狐瀏覽器 訪問安裝httpd的主機(172.25.15.10)
默認顯示的是apache的test 頁面
在apache默認發布目錄里創建文件
vim /var/www/html/index.html
寫入 helloworld 重啟服務
重新訪問172.25.15.10 頁面顯示為
在默認發布目錄里新寫一個 test文件
修改/etc/httpd/conf/httpd.conf
訪問 172.25.15.10 可以看到
2.修改apache默認發布目錄
查看 /var/www/html 的selinux標簽
創建新的默認發布目錄: mkdir -p /www/html/
修改這個目錄的 安全上下文
restorecon -FvvR /www/ (刷新SELINUX 標簽)
修改http的配置文件
vim /etc/httpd/conf/httpd.conf
119 行: 修改默認發布目錄
120-122行: 設置允許 所有人訪問該文件夾
重啟服務
測試: 在/www/html/ 下 創建test文件 寫入 nihao~~~~
訪問172.25.15.10 如下
3.虛擬主機
目的:訪問www.qq.com music.qq.com news.qq.com 顯示不同效果
mkdir -p /var/www/qq.com/music
mkdir -p /var/www/qq.com/news
echo music.qq.com > /var/www/qq.com/music/index.html (默認顯示文件)
echo news.qq.com > /var/www/qq.com/news/index.html (默認顯示文件)
進入 /etc/httpd/conf.d/
創建三個文件
80代表端口 Documentroot 代表默認發布目錄
combined
重啟httpd 服務
測試:
需要修改打開瀏覽器的主機的 /etc/hosts 文件
訪問 www.qq.com
訪問music.qq.com
訪問news.qq.com
4.給被訪問的文件加上用戶密碼
在apache默認發布目錄下 創建個被加密的文件
mkdir /var/www/html/admin/
echo no key no see > /var/www/html/admin/test
建立用戶加密文件
該加密文件必須在 /etc/* 下才會生效 (可以在別的地方生成該文件 再復制到/etc下)
如果在其他地方selinux會提示報錯 同時訪問的時候會有如下提示
cd /etc/httpd/
htpasswd -cm userfile westos (創建westos用戶到userfile內)(-c 代表創建文件)
接著輸入密碼
htpasswd -m userfile westos1 (把westos1用戶加入到userfile內)
接著輸入密碼
cat userfile
vim /etc/httpd/conf.d/default.conf
設置文件內某一個用戶允許登陸
設置文件內所有用戶可以登陸
測試:
www.qq.com/admin
輸入賬戶密碼
5.控制用戶訪問某網站
拒絕用戶訪問
以 music.qq.com 為例
vim /etc/httpd/conf.d/music.conf
允許用戶訪問
vim /etc/httpd/conf.d/music.conf
注意:deny和allow有順序 在Order一欄 可以看到
6.https(443端口 證書登陸,為了保證用戶輸入賬戶密碼的安全)
創建一個 login.qq.com
將 login.qq.com 寫到 火狐所在的主機的 /etc/hosts 內
cd /etc/httpd/conf.d/ 下
vim login.conf
給login創建一個目錄
mkdir -p /var/www/qq.com/login/ echo logintest > /var/www/qq.com/login/test
查看端口http 只有一個80端口
https 是通過 443端口傳輸
所以 安裝下載 mod_ssl 軟件
將443端口加入到防火墻允許列表
firewall-cmd --permanent --add-port=443/tcp
Firewall-cmd --reload
重啟 httpd 服務 查看端口信息
說明可以通過443端口 https 訪問
自定義自簽名證書
下載安裝crypto-utils軟件包
yum install crypto-utils -y
自己制作證書:
輸入:genkey apacheserver@example.com ( 需要制作證書的主機名)
選擇 1024 或者2048 都可以 越大生成的越慢
第二個加載的時候 需要在主機上敲命令 可以加速生成
主機名為 apacheserver.example.com (根據自己主機名寫)
修改 /etc/httpd/conf.d/login.conf
https://login.qq.com
下載證書 可以看到login的內容
SSLEngine on
SSLCertificateFile
SSLCertificateKeyFile
均可在 /etc/httpd/conf.d/ssl.conf中查詢到
網頁重定向
1.如何設置代理 (相當于×××)
原理:一臺代理服務器(可以訪問其他網段的主機),和一個客戶機(無法訪問其他網段),
將代理服務器設置為 客戶機的代理,客戶機通過代理的頁面緩存去訪問非同網段的頁面。
Squid 正向代理
要求:需要兩臺主機,一臺為代理服務器(雙網卡)
IP1:172.25.15.10
IP2:172.25.254.115
另一臺主機 ip :172.25.15.20
配置:
代理服務器的主機:yum install squid -y
vim /etc/squid/squid.conf
重啟 squid 服務,關閉火墻
第二臺主機 在firefox里 設置
編輯 > 首選項 > 高級 > 網絡 > 設置 >
此時 客戶機可以訪問 非同網段的 網頁
squid 反向代理
vim /etc/squid/squid.conf
重啟 squid 服務
關閉客戶機的代理服務
firefox 可以訪問254.40的頁面
原理:40主機相當于 騰訊主服務器 15.10 相當于西安服務器 15.20 相當于 客戶機
客戶機訪問15.10的80端口,在15.10的主機上設置虛擬端口訪問254.40主機。
則客戶機可以訪問254.40
轉載于:https://blog.51cto.com/wxl1607/1860330
總結
以上是生活随笔為你收集整理的【基础部分】之apache配置与应用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java并发编程之线程同步
- 下一篇: GirlFriendNotFoundEx