- 使用apache服务;
- 网页文件放在/data/share/htdocs/skills;
- 服务以用户webuser运行;
- 首页内容为“This is the front page of skills’s website.”;
- /htdocs/skills/staff.html内容为“Staff Information”;
- 该页面需要员工的账号Basic认证才能访问;
- 员工账号存储在/etc/apache2/.htpassd中,账号为 zsuser,lsus
- 客户端访问https时应无浏览器(含终端)安全警告;
- 当用户使用https访问时自动跳转到https 安全连接;
- 当用户使用 skills.com 或 any. skills.com (any代表任意网址前缀)访问时,自动跳转到www. skills.com.
什么是apache
Apache 是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。
Apache是一个基于流程的模块化Web服务器应用程序,它通过每个同时连接创建一个新线程。它支持许多功能; 其中许多都被编译为单独的模块并扩展其核心功能,并且可以提供从服务器端编程语言支持到身份验证机制的所有功能,它允许单个Apache Web服务器为许多不同的网站提供服务。
apache配置文件简单介绍
安装完成后配置文件在 /etc/apache 目录下,这里介绍几个 的文件
- apache2.conf apache服务的主配置文件,(包含了其他配置文件)
- sites–avilable 存放虚拟主机配置文件的目录 ,(如未启用文件 ,配置不生效)
- sites-enabled 启用后的虚拟主机配合文件,(来自sites-avliable 下的软连接)
- mods-aualiable 存放apache模块的目录,(如未启用模块,相关功能无法使用)
- mods-enabled 已启用的apache模块
- envvars apache2ctl 默认环境变量配置
Linux(Ubuntu 18)之Apache安装(五)_pan_mlpan的博客-CSDN博客_apt安装apacheLinux Apache2的安装与介绍1、Apache2的安装1、更新apt源sudo apt–get update2、安装apache2sudo apt–get install apache2默认apache2安装在了/etc/apache2文件夹下目录结构如下:apache2 的几个简单命令:启动、停止、重启、状态:sudo /etc/init.d/apache2 [ start | stop | restart | status ]service apache2 [ starhttps://blog.csdn.net/weixin_42272869/article/details/112984024
apache常用命令介绍
a2enmod // a2dismod # 开启 // 关闭 apache的模块
a2ensite // a2dissite # 开启 // 关闭一个站点配置
a2enconf // a2disconf # 启用 // 关闭一个配置文件
原文:https://www.dandelioncloud.cn/article/details/1451891697323151362
配置步骤
1.服务以用户webuser运行
服务安装完成后,默认是以www–data用户和组运行,我们要修改进程的UID,有两种方法修改,
——在主配置文件115行左右,这里已经说明 These need to be set in /etc/apache2/envvars (这些需要在/etc/apache2/envvars中配置),其实是指向了/etc/apache2/envvars 文件中的环境变量,
在envvars文件中有下面这样两行,这也是为社么默认是以www–data运行服务。主配置文件的user和group就指向这里,我们只要把www–data替换成webuser就可以了,
export APACHE_RUN_USER=www–data
export APACHE_RUN_ GROUP=www–data
第一种方法:
第二种方法
重启apache服务
2.创建网页文件
mkdir /data/share/htdocs/skills -p
创建首页文件
echo “This is the front page of skills’s website.” > /data/share/htdocs/skills/index.html
echo ““Staff Information”” > /data/share/htdocs/skills/staff.html
3. Directory
在apache2.conf文件中的160行左右有这样一段配置
<Directory /data/share/htdocs/skills>
Options Indexes FollowSymLinks # 如果$没有index.html,显示目录列表
AllowOverride None # None 为不读取.htaccess文件
如果不给你的网站目录配置<Directory>的话,浏览器会报“You don‘t have permission to access this resource.”(您没有访问此资源的权限)的错误。
4.Basic认证
<Directory /data/share/htdocs/skills>
AuthType Basic # 认证类型
AuthName password # 认证时的提示信息
Authuserfile /etc/apache2/.htpasswd # 用户认证的用户和密码文件
require user zsuser lsus # 允许进行认证的用户
</Directory>
有了认证配置没有认证文件也是不行的。认证文件用到 htpasswd
htpasswd – Manage user files for basic authentication (通过管理用户文件的基本认证)
htpasswd -c -b /etc/apache2/.htpasswd zsuser root
htpasswd -b /etc/apache2/.htpasswd lsus root
5.URL重定向
ServerAlias 使用apache的 m0d_alias 模块,该模块在安装时(这里指 apa-get installs 安装)已经启用了,这种方法基于linux正则表达式,
<VirtualHost *:80>
ServerAlias *.skills.com #当前虚拟主机的别名
Redirect permanent / /https://www.skills.com/ #永久重定向重定向
</VirtualHost>
Rewrite使用apache的 mod_rewrite 模块,该模块在安装时并没有启用,需要自己启动该模块,Rewrite 重定向是基于 poorl 正则表达式,
a2enmod rewrite # 开启Rewrite 模块
<VirtualHost *:80>
RewriteEngine ON # 启用Rewrite重写模块
RewriteCond %{http_host} skills.com$ [NC] # 定义判断,满足则执行下面的语句
RewriteRule ^(.*)$ https://www.skills.com/$1 [R=301] # 定义规则,R表示永久重定向
</VirtualHost>
6.虚拟主机配置
在/etc/apache2/sites-available/目录下两个文件,分别是 000-default.conf default–ssl.conf 连个文件,第一个文件使用http的80端口提供服务,默认该文件已启用,第二个文件使用https的443加密端口提供服务。
ServerName www.skills.com 设置服务器用于辨识自己的主机名和端口号
ServerAdmin webmaster@localhost 当出现故障,为客户提供一个邮件地址
DocumentRoot /data/share/htdocs/skills 客户端访问网站的根路径
Errorlog ${APACHE_LOG_DIR}/error.log 服务错误日志的位置
CustomLog ${APACHE_LOG_DIR}/access.log combined 访问日志文件名 和日志格式
ServerName www.skills.com 设置服务器用于辨识自己的主机名和端口号
ServerAdmin webmaster@localhost 当出现故障,为客户提供一个邮件地址
DocumentRoot /data/share/htdocs/skills 客户端访问网站的根路径
Errorlog ${APACHE_LOG_DIR}/error.log 服务错误日志的位置
CustomLog ${APACHE_LOG_DIR}/access.log combined 访问日志文件名 和日志
SSLEngine on 启用SSL模块
SSLCertificateFile /CA/apache.crt CA签发证书
SSLCertificatekeyFile /CA/apache,key 私钥文件
</VirtualHost>
7.把3.4.5.6.写到一个配置文件里
因为 000-default.conf 文件默认是启用的,我们把配置写到这个配置文件中
<VirtualHost *:80>
ServerAlias *.skills.com
Redirect permanent / https://www.skills.com
</VirtualHost>ServerName www.skills.com
DocumentRoot /data/share/htdocs/skills
SSLEngine ON
SSLCertificateFile /CA/apache.crt
SSLCertificatekeyFile /CA/apache.key
<Directory /data/share/thdocs/skills>
AuthType Basic
AuthName password
AuthUserFile /etc/apache2/.htpasswd
Require user zsuser lsus
</Directory>
</VirtualHOst>
8.测试
实际配置的话只配置 1 2 7 8 就可以了。
原文地址:https://blog.csdn.net/qq_68135064/article/details/125385965
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_45120.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!