linux系统部署Apache服务器||部署管理论坛

Apache基本配置

一.默认发布文件:

1.yum install httpd -y     下载服务

linux系统部署Apache服务器||部署管理论坛linux系统部署Apache服务器||部署管理论坛

2.systemctl start httpd    开启服务

3. cd  /var/www/html/       进入目录

linux系统部署Apache服务器||部署管理论坛

4. vim index.html        编辑文件Apache默认发布文件

linux系统部署Apache服务器||部署管理论坛

内容:

<h1>hello westos</h1>

linux系统部署Apache服务器||部署管理论坛

5.firewall-cmd --permanent --add-service=http   针对http的防火墙策略

6. firewall-cmd --reload                重新加载防火墙

linux系统部署Apache服务器||部署管理论坛

7. firewall-cmd --list-all                  查看防火墙策略

linux系统部署Apache服务器||部署管理论坛

8.systemctl restart httpd       重启服务

测试:

在浏览器输入:172.25.254.171就可看到默认发布文件的内容

linux系统部署Apache服务器||部署管理论坛

二.默认发布目录:

1. mkdir /westos/html   -p       建立目录(-p表示上层目录不存在自动建立)

vim  /westos/html/index.html 

linux系统部署Apache服务器||部署管理论坛 

 写入内容:westos

linux系统部署Apache服务器||部署管理论坛

2.vim /etc/httpd/conf/httpd.conf     编辑主配置文件修改默认发布文件

DirectoryIndex index.html               默认发布文件,可以有多个,哪个在前哪个优先级高

linux系统部署Apache服务器||部署管理论坛

3.vim /etc/httpd/conf/httpd.conf     编辑主配置文件修改默认发布目录

linux系统部署Apache服务器||部署管理论坛

内容:

DocumentRoot     "/westos/html"

121行        <Directory     "/westos">

122行       Require all granted

123行            </Directory>

linux系统部署Apache服务器||部署管理论坛

5.systemctl restart httpd        重启服务

linux系统部署Apache服务器||部署管理论坛

6.semanage fcontext -a -t httpd_sys_content_t   '/westos(/.*)?'    修改安全上下文

7. restorecon -RvvF /westos/      刷新安全上下文列表

linux系统部署Apache服务器||部署管理论坛

测试:在浏览器访问:172.25.254.171   可以看到默认发布目录文件的内容

linux系统部署Apache服务器||部署管理论坛

三.虚拟主机

1.vim /etc/httpd/conf/httpd.conf     配置文件修改默认发布目录

linux系统部署Apache服务器||部署管理论坛

内容:

DocumentRoot "/var/www/html"

linux系统部署Apache服务器||部署管理论坛

2. mkdir /var/www/virtual/news/html -p

   mkdir /var/www/virtual/music/html -p   建立目录

linux系统部署Apache服务器||部署管理论坛

3.vim /var/www/virtual/music/html/index.html     编辑文件写入内容

linux系统部署Apache服务器||部署管理论坛linux系统部署Apache服务器||部署管理论坛

 vim /var/www/virtual/news/html/index.html    编辑文件写入内容

linux系统部署Apache服务器||部署管理论坛linux系统部署Apache服务器||部署管理论坛

4. cd /etc/httpd/conf.d/     进入目录

5. vim default.conf           编辑默认发布目录

内容:

<VirtualHost     _default_:80>

      DocumentRoot   /var/www/html

      CustomLog     logs/default.log combined

</VirtualHost>

linux系统部署Apache服务器||部署管理论坛

linux系统部署Apache服务器||部署管理论坛

6. cp default.conf  music.conf      复制默认发布目录

7.vim music.conf                           编辑配置文件

内容:

<VirtualHost    *:80>

      ServerName  music.westos.com

      DocumentRoot /var/www/virtual/music/html

      CustomLog   logs/default.log combined

</VirtualHost>

<Directory  "/var/www/virtual/music/html">

      Require  all  granted

</Directory>

linux系统部署Apache服务器||部署管理论坛

linux系统部署Apache服务器||部署管理论坛

cp  music.conf   news.conf   复制文件

vim   news.conf                       编辑配置文件

内容:

<VirtualHost   *:80>

      ServerName  news.westos.com

      DocumentRoot /var/www/virtual/news/html

      CustomLog   logs/default.log combined

</VirtualHost>

<Directory  "/var/www/virtual/news/html">

      Require  all  granted

</Directory>

linux系统部署Apache服务器||部署管理论坛

linux系统部署Apache服务器||部署管理论坛


8. systemctl restart httpd       重启服务

linux系统部署Apache服务器||部署管理论坛

9.用真机root用户修改解析:vim  /etc/hosts

内容:

172.25.254.171  www.westos.com   news.westos.com   music.westos.com

linux系统部署Apache服务器||部署管理论坛

测试:在浏览器访问:www.westos.com    news.westos.com   music.westos.com

linux系统部署Apache服务器||部署管理论坛linux系统部署Apache服务器||部署管理论坛

linux系统部署Apache服务器||部署管理论坛

四.登陆权限:

1)用户创建

1. htpasswd  -cm  /etc/httpd/htuser  admin   创建文件

New password:                                            输入密码

Re-type new password:                              确认密码

Adding password for user admin

linux系统部署Apache服务器||部署管理论坛

2.cat /etc/httpd/htuser   查看用户

linux系统部署Apache服务器||部署管理论坛

3. htpasswd -m /etc/httpd/htuser  lee

linux系统部署Apache服务器||部署管理论坛

4.vim /etc/httpd/conf.d/default.conf     编辑配置文件

内容:

<VirtualHost  _default_:80>

      DocumentRoot /var/www/html

      CustomLog   logs/default.log combined

</VirtualHost>

<Directory "/var/www/html">

      Order Deny,Allow        先看Deny在看Allow。(哪个在前先看哪个)

      Allow from 172.25.254.107    不允许107登

      Deny from all           允许所有人登

</Directory>

linux系统部署Apache服务器||部署管理论坛

5.systemctl restart httpd      重启服务

测试:在浏览器输入:172.25.254.107访问不了

linux系统部署Apache服务器||部署管理论坛

2)允许用户通过认证方式登陆:

1.vim /etc/httpd/conf.d/default.conf     编辑配置文件

内容:

<VirtualHost _default_:80>

      DocumentRoot /var/www/html

      CustomLog   logs/default.log combined

</VirtualHost>

<Directory "/var/www/html">

      AuthUserFile /etc/httpd/htuser

      AuthName "Please input username and password"

      AuthType basic

      Require valid-user

</Directory>

linux系统部署Apache服务器||部署管理论坛

2. systemctl restart httpd

linux系统部署Apache服务器||部署管理论坛

测试:在浏览器输入:www.westos.com    用户登陆即可查看

linux系统部署Apache服务器||部署管理论坛

输入用户名和密码登陆可查看内容

linux系统部署Apache服务器||部署管理论坛

五.php页面发布

1.cd /etc/httpd/conf.d/    进入目录

 vim default.conf            编辑文件

linux系统部署Apache服务器||部署管理论坛

内容:

<VirtualHost _default_:80>

      DocumentRoot /var/www/html

      CustomLog   logs/default.log combined

</VirtualHost>

linux系统部署Apache服务器||部署管理论坛

2.[[email protected] conf.d]# cd /var/www/html/     进入目录

[[email protected] html]# ls                                       查看文件

index.html

linux系统部署Apache服务器||部署管理论坛

3. vim index.php     编辑文件

内容:(内容紫色,不对说明输入有误)

<?php

     phpinfo();

?>

linux系统部署Apache服务器||部署管理论坛

4.yum install php -y    安装软件

linux系统部署Apache服务器||部署管理论坛

5. systemctl restart httpd   重启服务

6. cd /etc/httpd/conf.d/       进入目录查看会生成php.conf文件

7. ls                                      查看

linux系统部署Apache服务器||部署管理论坛


测试:在浏览器输入:www.westos.com/index.php可以查看

linux系统部署Apache服务器||部署管理论坛

六.访问mysql数据库:

1.cd  /var/www/html        进入目录

2.phpMyAdmin-3.4.0-all-languages.tar.bz2      下载 软件

linux系统部署Apache服务器||部署管理论坛

3. tar  jxf   phpMyAdmin-3.4.0-all-languages.tar.bz2        解压

4.mv phpMyAdmin-3.4.0-all-languages/   mysqladmin   重命名

linux系统部署Apache服务器||部署管理论坛

5.cd  mysqladmin   进入ls查看

linux系统部署Apache服务器||部署管理论坛

6.cp config.sample.inc.php  config.inc.php     复制文件

linux系统部署Apache服务器||部署管理论坛

7.vim Documentation.txt        查看授权码

linux系统部署Apache服务器||部署管理论坛

8.vim config.inc.php               把授权码复制进去

内容:

17 $cfg['blowfish_secret'] = 'ba17c1ec07d65003';

linux系统部署Apache服务器||部署管理论坛

9.yum search php      查找插件

linux系统部署Apache服务器||部署管理论坛

10.yum install php-mysql.x86_64 -y      下载插件

linux系统部署Apache服务器||部署管理论坛

11.systemctl restart httpd         重启服务

linux系统部署Apache服务器||部署管理论坛

测试:在浏览器输入:172.25.254.107/mysqladmin

linux系统部署Apache服务器||部署管理论坛

输入用户和密码就可以访问mysql数据库

linux系统部署Apache服务器||部署管理论坛

七.安装证书及其私钥

1. cd /etc/httpd/conf.d/      即进入目录查看

autoindex.conf  music.conf  news.conf  README        welcome.conf

default.conf    mysqladmin  php.conf   userdir.conf

linux系统部署Apache服务器||部署管理论坛

2. yum install mod_ssl -y     安装插件

linux系统部署Apache服务器||部署管理论坛

3. ls                                        查看会生成ssl.conf文件

autoindex.conf  music.conf  news.conf  README    userdir.conf

default.conf    mysqladmin  php.conf   ssl.conf  welcome.conf

linux系统部署Apache服务器||部署管理论坛

4. systemctl restart httpd     重启服务

5. yum install crypto-utils.x86_64 -y    安装证书

linux系统部署Apache服务器||部署管理论坛

6. genkey www.westos.com    给域名加密

进入加密界面:点击下一步

linux系统部署Apache服务器||部署管理论坛

选择加密长度:

linux系统部署Apache服务器||部署管理论坛

选择no:

linux系统部署Apache服务器||部署管理论坛

写入信息:

linux系统部署Apache服务器||部署管理论坛

生成证书和钥匙:

/usr/bin/keyutil -c makecert -g 1024 -s "CN=www.westos.com, OU=linux, O=westos, L=Xi'an, ST=Shanxi, C=CN" -v 1 -a -z /etc/pki/tls/.rand.2542 -o /etc/pki/tls/certs/www.westos.com.crt -k /etc/pki/tls/private/www.westos.com.key

cmdstr: makecert

cmd_CreateNewCert

command:  makecert

keysize = 1024 bits

subject = CN=www.westos.com, OU=linux, O=westos, L=Xi'an, ST=Shanxi, C=CN

valid for 1 months

random seed from /etc/pki/tls/.rand.2542

output will be written to /etc/pki/tls/certs/www.westos.com.crt     证书

output key written to /etc/pki/tls/private/www.westos.com.key

Generating key. This may take a few moments...

Made a key

Opened tmprequest for writing

/usr/bin/keyutil Copying the cert pointer

Created a certificate

Wrote 882 bytes of encoded data to /etc/pki/tls/private/www.westos.com.key  钥匙

Wrote the key to:

/etc/pki/tls/private/www.westos.com.key

linux系统部署Apache服务器||部署管理论坛

7.vim ssl.conf       编辑配置文件

内容:

100 SSLCertificateFile /etc/pki/tls/certs/www.westos.com.crt

107 SSLCertificateKeyFile /etc/pki/tls/private/www.westos.com.key

linux系统部署Apache服务器||部署管理论坛

8. systemctl restart httpd    重启服务

linux系统部署Apache服务器||部署管理论坛

测试:在浏览器输入:https://www.westos.com            查看证书


八.http虚拟主机:(http与https之间的转换)

1. mkdir /var/www/virtual/loogin/html -p  建立目录
2. vim  /var/www/virtual/loogin/html/index.html  写入内容
3. vim login.conf     编辑配置文件
内容:
<Virtualhost *:443>
      ServerName login.westos.com
      DocumentRoot /var/www/virtual/loogin/html
      CustomLog   logs/login.log    combined
      SSLCertificateFile on
      SSLCertificateFile /etc/pki/tls/certs/www.westos.com.crt
      SSLCertificateKeyFile /etc/pki/tls/private/www.westos.com.key
</VirtualHost>
<Virtualhost *:80>
      ServerName login.westos.com
      RewriteEngine on
      RewriteRule ^(/.*)$ https://%{HTTP_HOST}$1 [redirect=301]
</VirtualHost>

配置文件每个字符含义:
^(/.*)$          客户在浏览器地址栏输入的所有字符
https://         强制客户加密访问
%{HTTP_HOST}     客户请求主机
$1               $1表示^(/.*)$的值
[redirect=301]   临时转换   302永久转换

linux系统部署Apache服务器||部署管理论坛
4. systemctl restart httpd   重启服务
5. vim /etc/hosts     修改解析(真机)
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
172.25.254.107 www.westos.com  news.westos.com  music.westos.com login.westos.com

linux系统部署Apache服务器||部署管理论坛
测试:在浏览器输入:login.westos.com   会转换成https://login.westos.com/



九.执行cgi脚本

1. yum install httpd-manual -y    下载httpd手册软件

linux系统部署Apache服务器||部署管理论坛
2. ls        查看会生成manual.conf文件
autoindex.conf  manual.conf  news.conf  ssl.conf      welcome.conf
default.conf    music.conf   php.conf   tmprequest
login.conf      mysqladmin   README     userdir.conf

linux系统部署Apache服务器||部署管理论坛
3. systemctl restart httpd    重启服务
在浏览器输入:172.25.254.107/manual    查看手册

linux系统部署Apache服务器||部署管理论坛
4. cd /var/www/html/           进入目录查看
index.html  index.php  mysqladmin
5.mkdir cgi                          建立目录

linux系统部署Apache服务器||部署管理论坛
6. cd cgi/
 vim index.cgi     进入目录,编辑配置文件

linux系统部署Apache服务器||部署管理论坛
内容:
#!/usr/bin/perl
print "Content-type: text/html\n\n";
print `date`;

linux系统部署Apache服务器||部署管理论坛
7. chmod +x index.cgi    加执行权限
8. ./index.cgi           执行脚本
linux系统部署Apache服务器||部署管理论坛
测试在浏览器输入:172.25.254.107/cgi/index.cgi    显示脚本内容,没有执行

linux系统部署Apache服务器||部署管理论坛
9. vim /etc/httpd/conf/httpd.conf    编辑配置文件
内容:
107 <Directory /var/www/html/cgi>
108      Options  +ExecCGI
109      AddHandler cgi-script    .cgi
110 </Directory>

linux系统部署Apache服务器||部署管理论坛
10. systemctl restart httpd      重启服务
11. getenforce      查看selinux状态

linux系统部署Apache服务器||部署管理论坛

注意:selinux状态是关闭时,直接在浏览器中输入:

172.25.254.107/cgi/index.cgi    会执行脚本,显示时间

linux系统部署Apache服务器||部署管理论坛

如果selinux状态是开启时需要修改安全上下文后方可访问。

1. ls /var/www/html/cgi/ -Z -d      查看安全上下文
drwxr-xr-x. root root unconfined_u:object_r:httpd_sys_content_t:s0 /var/www/html/cgi/
2. semanage fcontext -a -t httpd_sys_script_exec_t '/var/www/html/cgi(/.*)?'     修改安全上下文
3. restorecon -RvvF /var/www/html/cgi/     刷新
测试在浏览器输入:172.25.254.107/cgi/index.cgi    执行脚本,显示时间

linux系统部署Apache服务器||部署管理论坛
注意:如果访问不了需要做一个虚拟主机:
1. cd /etc/httpd/conf.d/     进入目录查看
autoindex.conf  manual.conf  news.conf  ssl.conf      welcome.conf
default.conf    music.conf   php.conf   tmprequest
login.conf      mysqladmin   README     userdir.conf

2. vim default.conf         编辑文件
内容:
<VirtualHost _default_:80>
      DocumentRoot /var/www/html
      CustomLog   logs/default.log combined
</VirtualHost>


十.squid代理

squid正向代理

1. vim /etc/sysconfig/network-scripts/ifcfg-eth0  修改虚拟机网关,dns

内容:

IPADDR=172.25.254.107

GATEWAY=172.25.254.71

DNS1=114.114.114.114

linux系统部署Apache服务器||部署管理论坛

2. systemctl restart network     重启网络

3. yum install squid -y               下载软件

linux系统部署Apache服务器||部署管理论坛

4. systemctl start squid                打开软件

5. netstat -antlupe | grep squid    查看squid使用的端口

linux系统部署Apache服务器||部署管理论坛

6. vim /etc/squid/squid.conf   编辑配置文件

内容:

56    http_access allow all

62    cache_dir ufs /var/spool/squid 100 16 256

linux系统部署Apache服务器||部署管理论坛

7. systemctl restart squid.service   重启服务

8. cd /var/spool/squid/                      进入目录查看       

   会生成文件(16个100M的文件,超过100M会覆盖之前的文件)

00  01  02  03  04  05  06  07  08  09  0A  0B  0C  0D  0E  0F  swap.state

linux系统部署Apache服务器||部署管理论坛

打开浏览器:由上角3横---preferences---Advanced---Network---Settings---第四个,添加ip,和端口

linux系统部署Apache服务器||部署管理论坛

linux系统部署Apache服务器||部署管理论坛

测试:在浏览器输入:www.baidu.com就可以上网。

linux系统部署Apache服务器||部署管理论坛

squid反向代理:

打开server虚拟机服务端:卸载httpd服务
1.yum install squid -y     下载软件

linux系统部署Apache服务器||部署管理论坛
2.systemctl start squid    打开软件
3. vim /etc/squid/squid.conf   编辑配置文件
内容:
 59 http_port 80 vhost vport
 60 cache_peer 172.25.254.214 parent 80 0 proxy-only  通过80接口访问107

linux系统部署Apache服务器||部署管理论坛
4.systemctl restart squid      重启服务
测试:在浏览器输入:172.25.254.114会看到172.25.254.214主机发布目录的内容。
linux系统部署Apache服务器||部署管理论坛

squid反向代理轮询:

在服务端做:

1.vim /etc/squid/squid.conf      编辑配置文件
内容:
cache_peer 172.25.254.214 parent 80 0 proxy-only round-robin originserver name=web1 weight=3
cache_peer 172.25.254.14 parent 80 0 proxy-only round-robin originserver name=web2 weight=1
cache_peer_domain web1 web2 www.westos.com


参数:
weight=3    weight=1   表示166三次,108一次

linux系统部署Apache服务器||部署管理论坛
2. systemctl restart squid     重启服务
3.在真机修改解析:vim /etc/hosts  
内容:
172.25.254.214 www.westos.com  news.westos.com  music.westos.com login.westos.com
测试:栏浏览器输入:www.westos.com
linux系统部署Apache服务器||部署管理论坛

搭建论坛:
在207做:
使用lamp(selinux+apache+mariadb+php)架构搭建论坛
1.yum install mod_ssl httpd php mariadb-server.x86_64   php-mysql.x86_64 -y
安装软件

linux系统部署Apache服务器||部署管理论坛
2.cd /var/www/html
3.下载Discuz_X3.2_SC_UTF8.zip

linux系统部署Apache服务器||部署管理论坛
4.unzip  Discuz_X3.2_SC_UTF8.zip   解压
5. systemctl stop squid    停止服务
6. systemctl start httpd   打开服务
7. chmod 777 /var/www/html/upload/    更改权限

linux系统部署Apache服务器||部署管理论坛
在浏览器输入:172.25.254.214/upload   进入安装界面
linux系统部署Apache服务器||部署管理论坛

同意进入:检测安装环境进行下一步安装

linux系统部署Apache服务器||部署管理论坛

设置运行环境

linux系统部署Apache服务器||部署管理论坛

创建数据库

linux系统部署Apache服务器||部署管理论坛

完成安装,进行登陆论坛

linux系统部署Apache服务器||部署管理论坛