linux——Apache服务配置及php的使用

Apache

一、服务简介

Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。

二、服务配置
[root@foundation70 Desktop]# yum install httpd -y
[root@foundation70 Desktop]# yum install httpd-manual -y
[root@foundation70 Desktop]# systemctl start httpd
[root@foundation70 Desktop]# systemctl enable httpd
[root@foundation70 Desktop]# systemctl stop firewalld.service 
[root@foundation70 Desktop]# systemctl disable firewalld.service 
在浏览器上测试

http://主机ip

http://主机ip/manual

三、apache的基础信息
主配置目录: /etc/httpd/conf/
主配置文件: /etc/httpd/conf/httpd.conf/
子配置目录: /etc/httpd/conf.d/
子配置文件: /etc/httpd/conf.d/*.conf
默认发布目录:/var/www/html
默认端口:    80

[root@foundation70 Desktop]# ss -anutlpe |grep httpd   #查看端口号

默认安全上下文 httpd_sys_content_t
程序开启默认用户: apache
apache日志:   /etc/httpd/logs/*
三apache服务的管理
1.更改默认端口
[root@localhost Desktop]# vim /etc/httpd/conf/httpd.conf 
42 Listen 8080
[root@localhost Desktop]# systemctl restart httpd

如下图:直接以默认端口访问无效,添加上设置的端口号即可以成功访问

2.默认发布文件以及修改
定义:默认发布文件就是访问 apache服务的时候没有指定名称就能访问的文件
[root@localhost Desktop]# cd /var/www/html/
[root@localhost html]# ls
[root@localhost html]# touch index.html     #配置文件默认发布文件就是index.html

[root@localhost html]# echo hello world > index.html

修改默认发布文件
[root@localhost html]# vim /etc/httpd/conf/httpd.conf 
164  DirectoryIndex index.html test.html #按顺序访问,当index.html文件不在时访问test.html
[root@localhost html]# touch test.html
[root@localhost html]# echo hello freya > test.html
[root@localhost html]# mv index.html /mnt   #把优先级高的index.html文件移除默认发布目录
[root@localhost html]# systemctl restart httpd

如下图,默认发布文件访问了test.html

3.修改默认发布目录
[root@localhost html]# mkdir /freya  #新建默认发布目录
[root@localhost html]# vim /freya/index.html 
<h1>new directory </h1>  #该发布目录下的默认发布文件(apache服务支持html)
[root@localhost html]# vim /etc/httpd/conf/httpd.conf 
119 #DocumentRoot "/var/www/html"  #注释原有的默认发布目录
120 DocumentRoot "/freya"                  #添加新的默认目录
121 <Directory  "/freya"> 
122       Require all granted
123 </Directory>                                     #为该目录授权
[root@localhost html]# systemctl restart httpd  
[root@localhost html]# semanage fcontext -a -t httpd_sys_content_t '/freya(/.*)?'
[root@localhost html]# storecon -RvvF /freya  #为该新目录更改安全上下文或者直接关闭selinux “[root@localhost html]# setenforce  0"

如下图:访问apache服务默认发布目录更改,显示的是新目录下的默认发布文件

4.apache的虚拟主机
(1)作用:从 web 概念上来讲,访问一个 web 服务,其实就是访问某个主机上的某个端口,这个端口默认是 80,通常需要访问不同的域名,不同的端口,以便于实现对不同网站的访问。这个时候就需要配置虚拟主机。也就是做到了一个服务器一个 apache 提供多个网站服务。
(2)建立一个站点为freya.test.com
[root@localhost ~]# vim /etc/httpd/conf.d/adefault.conf

#在子配置目录下添加一个叫做adefault的配置文件,该配置文件的作用是令非指定的站点跳转到/var/www/html发布目录下。如下图

[root@localhost ~]# mkdir /var/www/virtual/freya.test.com/html -p #创建该站点目录
[root@localhost ~]# vim /var/www/virtual/freya.test.com/html/index.html 
freya.test.com's page
#为该站点添加默认发布文件的内容
[root@localhost ~]# vim /etc/httpd/conf.d/freya.conf 
#在子配置目录下添加一个叫做freya的配置文件,该配置文件的作用是令非指定的站点跳转到/var/www/virtual/freya.test.com/html发布目录下,访问该目录下的默认发布文件index.html
如下图combined表示四种日志类型。

[root@localhost html]# systemctl restart httpd
[root@localhost html]# vim /etc/hosts               #为要利用的浏览器添加域名解析
172.25.254.112 freya.test.com   linux.test.com

测试结果:

非指定域名默认会跳转到apache的发布目录下

指定域名会跳转到指定发布目录下,访问该目录下的默认发布文件

5.apache内部的访问控制
(1)针对主机的访问控制
[root@localhost ~]# mkdir /var/www/html/test
[root@localhost ~]# vim /var/www/html/test/index.html
<h1>test'page</h1>
[root@localhost ~]# vim /etc/httpd/conf.d/adefault.conf 
如下图,限制了ip为172.25.254.70的主机访问/var/www/html/test目录的权力,Order allow,deny表示先允许所有主机,再限定指定主机。

测试

(2)用户访问方式的控制(为了安全起见,我们需要用户在访问某一页面的时候需要认证)
[root@localhost ~]# mkdir /var/www/html/admin
[root@localhost ~]# vim /var/www/html/admin/index.html
<h1>admin'page</h1>                       #设置用户登陆时访问的页面
[root@localhost ~]# htpasswd -cm /etc/httpd/userpass admin  #为某个用户设定密码
New password:                                   #添加密码
Re-type new password: 
Adding password for user admin
[root@localhost ~]# vim /etc/httpd/conf.d/adefault.conf 

添加下图内容

[root@localhost ~]# systemctl restart httpd

测试

6.apache支持的语言
(1)html apache默认支持的语言,可以在apache的默认发布文件中直接用该语言
(2)php
[root@localhost html]# yum install php -y

[root@localhost html]# vim /var/www/html/index.php #在默认发布目录上添加一个显示php信息的测试文件。

[root@localhost html]# systemctl restart httpd

测试结果:

(3)cgi
[root@localhost ~]# mkdir /var/www/html/cgi
[root@localhost ~]# vim /var/www/html/cgi/index.cgi
[root@localhost ~]# chmod +x /var/www/html/cgi/index.cgi

执行以下该脚本,检测是否正确

[root@localhost ~]# vim /etc/httpd/conf.d/adefault.conf

[root@localhost ~]# systemctl restart httpd

测试结果:

7.https 
(1)https定义和作用:是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)。
(2)https的配置
先安装如下如下两个软件
[root@localhost ~]# yum install mod_ssl -y
[root@localhost ~]# yum install crypto-utils -y
配置钥匙和证书 genkey 域名
例如 genkey www.freya.com

具体步骤如下图

 

当钥匙和证书制作完成后,会在shell中显示证书和钥匙的目录如下图圈注,将证书和钥匙的目录添加到指定配置文件/etc/httpd/conf.d/ssl.conf

[root@localhost ~]# vim /etc/httpd/conf.d/ssl.conf
101 SSLCertificateFile /etc/pki/tls/certs/www.freya.com.0.csr
108 SSLCertificateKeyFile /etc/pki/tls/private/www.freya.com.key

(3)设定https虚拟主机并设定网页重写
[root@localhost ~]# mkdir /var/www/virtual/login.freya.com/html -p
[root@localhost ~]# vim /var/www/virtual/login.freya.com/html/index.html
<h1>Welcome freya</h1>
[root@localhost ~]# vim /etc/httpd/conf.d/login.conf
[root@localhost ~]# systemctl restart httpd

  • 9
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 在Linux配置Apache服务器,需要进行以下步骤: 1. 安装Apache服务器使用命令行工具,输入sudo apt-get install apache2,即可安装Apache服务器。 2. 配置Apache服务器:在安装完成后,需要进行一些配置,如修改配置文件等。配置文件位于/etc/apache2/目录下,主要包括apache2.conf、httpd.conf、sites-available/和sites-enabled/等文件。 3. 配置虚拟主机:虚拟主机是指在一台服务器上运行多个网站。在Apache服务器中,可以通过配置虚拟主机来实现。需要在sites-available/目录下创建一个新的配置文件,并在其中配置虚拟主机的相关信息。 4. 配置SSL证书:如果需要在Apache服务器上启用HTTPS协议,需要配置SSL证书。可以通过使用Let's Encrypt等工具来生成SSL证书。 5. 重启Apache服务器:在完成以上配置后,需要重启Apache服务器,使配置生效。可以使用命令行工具,输入sudo service apache2 restart,即可重启Apache服务器。 以上就是在Linux配置Apache服务器的基本步骤。 ### 回答2: 在Linux系统中,Apache是最常用的Web服务器,是一个开源软件,非常稳定、安全、可靠,而且高效。下面是关于如何在Linux下进行Apache服务器配置的一些基础知识。 1. 安装ApacheLinux系统中,可以使用如下命令安装Apache: $ sudo apt-get install apache2 2. 配置Apache Apache配置文件存储在/etc/apache2/下面。打开apache2.conf文件,编辑器为vim,命令如下: $ sudo vim /etc/apache2/apache2.conf 修改完配置文件后,需要重新启动Apache $ /etc/init.d/apache2 restart 3. 配置Virtual Hosts Virtual Hosts是Apache的一个核心功能,它可以设置多个域名,默认情况下所有请求都是由默认Virtual Host处理。下面是如何创建Virtual Hosts的步骤: 3.1 在Apache配置文件中开启Virtual Hosts 打开apache2.conf文件 $ sudo vim /etc/apache2/apache2.conf 找到以下行: # Include generic snippets of statements IncludeOptional conf-enabled/*.conf IncludeOptional sites-enabled/*.conf 将IncludeOptional sites-enabled / *。打开CONF取消注释或手动添加即可 3.2 创建Virtual Host 在/etc/apache2/sites-available目录下创建配置文件: $ sudo vim /etc/apache2/sites-available/example.com.conf sudo vim /etc/apache2/sites-available/test.com.conf 3.3 激活Virtual Host 使用以下命令将Virtual Host中的配置文件链接到Apache配置目录中。 $ sudo a2ensite example.com.conf sudo a2ensite test.com.conf 须输入密码后才会生效 3.4 重启Apache $ service apache2 restart 4. 配置Apache的防火墙规则 在Linux系统中,一般使用iptables命令来配置防火墙规则。如果我们需要允许外部访问Web服务器,我们需要添加规则: iptables -A INPUT -p tcp --dport 80 -j ACCEPT iptables -A INPUT -p tcp --dport 443 -j ACCEPT 这些规则会允许HTTPHTTPS流量通过防火墙,并将它们转发到Apache服务器。 总之,Linux配置Apache服务器需要关注一些基本方面,如安装、配置Virtual Hosts和防火墙规则等内容。正确的配置可以提高Web服务器的安全性和性能,从而更好地满足用户的需求。 ### 回答3: Apache服务器是当前世界上最为广泛使用的Web服务器,其稳定性与安全性受到了广泛的认可与推崇。在Linux操作系统中,通过配置Apache服务器可以实现Web服务的搭建与管理,下面是LinuxApache服务器配置的相关内容。 1. 安装Apache服务器Linux操作系统中,可以通过命令行安装Apache服务器。如在CentOS系统中,可以使用yum命令安装Apache服务器,具体命令如下: yum install httpd 在完成安装后,可以启动Apache服务器,并将其设置为开机自启动: systemctl start httpd systemctl enable httpd 2. 配置Apache服务器 Apache服务器配置文件位于/etc/httpd/conf/httpd.conf中,因此可以通过修改该文件来实现Apache服务器配置。具体配置内容如下: a. 设置监听端口 默认情况下,Apache服务器监听80端口,支持HTTP协议。如果需要同时支持HTTPS协议,则需要监听443端口。可以通过修改httpd.conf文件中的Listen指令来设置监听端口: Listen 80 Listen 443 b. 配置虚拟主机 Apache服务器支持虚拟主机功能,可以通过在httpd.conf文件中配置虚拟主机,实现同时承载多个网站。具体配置方式如下: <VirtualHost *:80> ServerName www.example.com DocumentRoot /var/www/html/example </VirtualHost> c. 配置访问控制 Apache服务器可以通过.htaccess文件实现访问控制,可以通过在httpd.conf文件中配置Allow和Deny指令来设置访问控制规则: <Directory "/var/www/html"> Allow from 10.0.0.0/8 Deny from all </Directory> 3. 其他常用配置 a. 设置默认首页 在httpd.conf文件中可以使用DirectoryIndex指令设置默认首页: DirectoryIndex index.html index.htm index.php b. 启用模块 Apache服务器支持多种扩展模块,可以通过在httpd.conf文件中加载需要的模块来扩展其功能: LoadModule mod_rewrite.so c. 配置错误页面 可以通过在httpd.conf文件中配置ErrorDocument指令来修改错误页面的显示方式: ErrorDocument 404 /404.html 总之,Apache服务器是构建Web服务的重要基础,掌握其配置技能对于Linux服务器的管理和Web开发都具有重要的意义。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值