1. 程式人生 > >linux--apache的基本應用

linux--apache的基本應用

apache

一、apache
企業中常用的web服務,用來提供http://(超文本傳輸協議)
二、apache的安裝部署
yum install httpd -y
yum install httpd-manual
systemctl start httpd
systemctl enable httpd
圖示:安裝httpd
技術分享圖片

圖示:安裝httpd-manual
技術分享圖片
圖示:開啟加載httpd
技術分享圖片

測試 http://172.25.254.121
http://172.25.254.121/manual
圖示:訪問測試
技術分享圖片
圖示:訪問測試man

三、apache 的基礎信息



主配置目錄: /etc/httpd/conf
主配置文件: /etc/httpd/conf/httpd.conf
子配置目錄: /etc/httpd/conf.d
子配置文件: /etc/httpd/conf.d/*.conf
默認發布目錄: /var/www/html
默認發布文件: /index.html
默認端口: 80
默認安全上下文:httpd_sys_content_t
程序開啟默認用戶: apache
apache日誌: /etc/httpd/logs/*

查看端口
ss -anutlpe | grep httpd
圖示:端口80
技術分享圖片
修改默認端口
vim /etc/httpd/conf/httpd.conf
43 Linsten 8080 修改默認端口為8080
圖示:修改配置文件
技術分享圖片
修改默認分布文件:
默認發布文件就是訪問apache時沒有指定文件名稱時默認訪問的文件
這個文件可以指定多個,有訪問先後順序


vim /etc/httpd/conf/httpd.conf
164 DirectoryIndex index.html test.html 當index.html不存在時訪問 test.html
圖示:修改配置文件
技術分享圖片
修改默認發布目錄
vim /etc/httpd/conf/httpd.conf
121 <Directory "/www">
122 Require all granted
123 <Directory>
圖示:修改配置文件
技術分享圖片
[root@domain ~]# > /var/log/messages
[root@domain ~]# ls -Zd /www/
drwxr-xr-x. root root unconfined_u:object_r:default_t:s0 /www/
[root@domain ~]# storecon -RvvF /www/

四、apache的虛擬主機
vim /etc/httpd/conf.d/adefault.conf
<VirtualHost _default_:80>
DocumentRoot"/var/www/html"
CustomLog "logs/www.westos.com.log"combined
</VirtualHost>

vim /etc/httpd/conf.d/linux.conf
<VirtualHost *:80>
ServerName linux.westos.com ##指定站點名稱
DocumentRoot"/var/www/virtual/linux.westos.com/html" ##站點默認發布目錄
CustomLog"logs/linux.westos.com.logs" combined ##站點日 誌combined表示四種日誌的集合
</VirtualHost>
<Directory "/var/www/virtual/linux.westos.com/html">
Require all granted
</Directory>
vim /etc/httpd/conf.d/c.conf
<VirtualHost *:80>
DocumentRoot "/var/www/html"
CustomLog "logs/www.westos.com.log"combined
</VirtualHost>
<Directory "/var/www/html/test">
Order deny,allow
Allow from 172.25.254.60
Deny from all
</Directory>

測試:
測試主機中做好本地解析

vim /etc/hosts
172.25.254.100 c.westos.com

圖示:測試
技術分享圖片

五、apache內部的訪問控制
1.針對與主機的訪問設置
touch /var/www/html/test
vim /etc/httpd/conf.d/adefault.conf
<Directory"/var/www/html/test">
Order deny,allow ##列表讀取順序,後讀取的列表會覆蓋限度去內容的重復部分
Allow from 172.25.254.60
Deny from all
</Directory>

2.用戶方式的訪問控制
cd /etc/httpd/conf.d/
mkdir /var/www/html/admin
vim /var/www/html/admin/index.html
htpasswd -cm /etc/httpd/userpass admin
htpasswd -m /etc/httpd/userpass admin1
圖示:新建加密用戶,建立第一個用戶需要加“-c”
技術分享圖片
vim /etc/httpd/conf.d/adefault.conf
<Directory "/var/www/html/admin">
AuthUserFile/etc/httpd/userpass
AuthName "Please input your nameand password"
AuthType basic
#Require user admin ##只允許admin用戶登陸
Require valid-user ##允許所有用戶登陸
</Directory>
systemctl restart httpd.service
圖示:adefault.conf內容
技術分享圖片
六、apeche 支持的語言
1.html ##系統默認支持
2.php
vim /var/www/html/index.php
<?php
phpinfo();
?>

yum install php -y
systemctl restart httpd
圖示:安裝 php
技術分享圖片
測試:(確保100主機防火墻關閉)
http://172.25.254.100/index.php
圖示:測試結果
技術分享圖片
3.cgi
mkdir /var/www/html/cgi -p
semanage fcontext -a -t httpd_sys_script_exec_t ‘/var/www/html/cgi(/.*)?‘
restorecon -RvvF/var/www/html/cgi/
vim /var/www/html/cgi/index.cgi
#!/usr/bin/perl
print "Content-type: text/html\n\n";
print `date`;
chmod +x /var/www/html/cgi/index.cgi ##添加可執行權限
/var/www/html/cgi/index.cgi ##執行腳本確定正確
圖示:腳本運行正確
技術分享圖片
vim /etc/httpd/conf.d/adefault.conf
<Directory "/var/www/html/cgi">
Options +ExecCGI
AddHandler cgi-script .cgi
</Directory>
圖示:腳本內容
技術分享圖片
七、設定https虛擬主機並設定網頁重寫
1.安裝
yum install mod_ssl
yum install crypto-utils -y
2.配置
genkey www.westos.com
圖示:操作過程

技術分享圖片

技術分享圖片

技術分享圖片

vim /etc/httpd/conf.d/ssl.conf
101 SSLCertificateFile /etc/pki/tls/certs/www.westos.com.crt ##生成的證書
108 SSLCertificateKeyFile /etc/pki/tls/private/www.westos.com.key ##生成的鑰匙

vim /etc/httpd/conf.d/login.conf
1 <VirtualHost *:443>
2 ServerName login.westos.com
3 DocumentRoot /var/www/html/virtual/login.westos.com/html
4 CustomLog "logs/login.logs" combined
5 SSLEngine on ##開始https功能
6 SSLCertificateFile /etc/pki/tls/certs/www.westos.com.crt ##證書
7 SSLCertificateKeyFile /etc/pki/tls/private/www.westos.com.key ##鑰匙
8 </VirtualHost>
9 <Directory"/var/www/html/virtual/login.westos.com/html"> ##給默認發布目錄授權訪問
10 Require all granted
11 </Directory>
12 <VirtualHost *:80> ##網頁重寫實現自動訪問https
13 ServerName login.westos.com
14 RewriteEngine on
15 RewriteRule ^(/.*)$ https://%{HTTP_HOST}$1 [redirect=301]
16 </VirtualHost>
重寫規則
^(/.*)$ ##客戶在瀏覽器地質欄中輸入的所有字符
https:// ##強制客戶加密訪問
%{HTTP_HOST} ##客戶請求主機
$1 ##‘$1’表示 ^(/.*)$ 的值
[redirect=301] ##臨時重寫 302永久轉換
圖示:腳本內容
技術分享圖片
測試:
在訪問端添加解析

172.25.254.100 login.westos.com
訪問http://login.westos.com會自動調轉到https://login.westos.com 實現網頁數據加密傳輸
圖示:獲取證書
技術分享圖片

技術分享圖片

技術分享圖片技術分享圖片

##end##

本文出自 “13342594” 博客,請務必保留此出處http://13352594.blog.51cto.com/13342594/1983913

linux--apache的基本應用