Linux 搭建网站

配置网络

1 改对应配置文件

vi /etc/sysconfig/network-scripts/ifcfg-ens32

2 使用命令

nmcli connection add con-name supermao ifname ens32 type ethernet

nmcli connection modify supermao ipv4.method manual ipv4.addresses 10.104.45.235

修改网络编辑器

配置yum源

连接镜像文件

cat > /etc/yum.repo/local.repo << q

name=rhel

baseurl=file:///media

gpgcheck=0

enabled=1

q

mount /dev/cdrom /media

下载

yum -y install httpd 下载网页

yum -y install net-tools 下载查看端口工具

yum -y install bash* 下载补全工具

bash

防火墙允许通过

firewall-cmd --permanent --add-server=http

firewall-cmd --reload

重启httpd

systemctl restart httpd

现在可以访问http://10.104.45.235 来查看httpd有没有搭建成功

Linux搭建个人网站

接着上面做

cd /etc/httpd/conf.d

vi userdir.conf

进入vi的末行模式 %s/UserDir disable/UserDir enabled/g

去掉UserDir public_html 的#号

添加用户

useradd supermao

cd /home/supermao

mkdir public_html

echo 'this is website for supermao' > /home/supermao/public_html/index.html

chmod -R o+x /home/supermao

更改bool值

getsebool -a | grep httpd

setsebool -P httpd_enable_homedirs on

访问http://10.104.45.235/~supermao/

配置基于域名访问的虚拟主机

创建访问的文件

mkdir /www/

chmod o+x /www

cd /www

mkdir one two

cd one

echo "this is a web for virtual host one">>index.html

cd two

echo "this is a web for virtual host two">>index.html

配置虚拟主机文件

cd /etc/httpd/conf.d

vi one.conf

            <Directory /www/one>
Require all granted
</Directory>
<VirtualHost 10.104.45.235>
ServerName www.one.com
DocumentRoot /www/one/
</VirtualHost>

vi two.conf

            <Directory /www/two>
Require all granted #允许所有访问的请求
</Directory>
<VirtualHost 10.104.45.235>
ServerName www.two.com #域名
DocumentRoot /www/two/ #文件目录
</VirtualHost>

vim /etc/hosts

10.104.45.235 www.one.com

10.104.45.235 www.two.com

systemctl restart httpd

尝试curl www.one.com

报错因为selinux限制了 得修改文件bool值或者关闭selinux

semanage fcontext -a -t httpd_sys_content_t '/www(/.*)?'

restorecon -RFv /www

配置基于端口访问

配置主配置文件,添加端口号

vi /etc/httpd/conf/httpd.conf

  # Change this to Listen on specific IP addresses as shown below to
# prevent Apache from glomming onto all bound IP addresses.
#
#Listen 12.34.56.78:80
Listen 80
Listen 8088
Listen 8089

创建端口网页并给文件夹递归的执行权限

mkdir -p /www/8088

mkdir /www/8089

echo 'this is a web for port 8088' > /www/8088/index.html

echo 'this is a web for port 8089' > /www/8089/index.html

chmod -R /www o+x

创建文件

cd /etc/httpd/conf.d

  cat  > 8088.conf << q
<Directory /www/8088/>
Require all granted
</Directory>
<virtualhost 192.168.20.130:8088>
DocumentRoot /www/8088/
</virtualhost> cat > 8089.conf << q
<Directory /www/8089/>
Require all granted #授予允许权限
</Directory>
<virtualhost 192.168.20.130:8089>
DocumentRoot /www/8089/
</virtualhost> #配置虚拟端口网页的访问路径

设置selinux的上下文和bool值

首先查看http的端口上下文

semanage port -l | grep http

http_cache_port_t              udp      3130
http_port_t tcp 8088, 8089, 80, 81, 443, 488, 8008, 8009, 8443, 9000
pegasus_http_port_t tcp 5988
pegasus_https_port_t tcp 5989

开启seliunx添加两条端口号,则selinux不报错

semanage port -a -t http_port_t -p tcp 8088

semanage port -a -t http_port_t -p tcp 8089

但是防火墙会挡住不认识的端口8088与8089

设置防火墙添加端口

firewall-cmd --permanent --add-port=8088/tcp

firewall-cmd --permanent --add-port=8089/tcp

firewall-cmd --reload

配置tls加密

安装TLS加密软件

yum -y install mod_ssl

生成密钥

openssl genrsa > tlsweb.key

生成证书请求文件

openssl req -new -key tlsweb.key > tlsweb.csr

生成证书文件

openssl req -x509 -days 365 -key tlsweb.key -in tlsweb.csr > tlsweb.crt

修改ssl.conf配置文件

SSLCertificateFile /etc/pki/tls/certs/tlsweb.crt

SSLCertificateKeyFile /etc/pki/tls/private/tlsweb.key

将证书文件拷贝到对应目录

cp tlsweb.crt /etc/pki/tls/certs/

把秘钥文件拷贝到ssl.conf配置文件里的对应路径下面

cp tlsweb.key /etc/pki/tls/private/

重启httpd

可以使用更安全的https去访问网站

https://192.168.100.10

若防火墙阻拦则需要开启443端口

Linux httpd搭建的更多相关文章

  1. Linux下搭建个人网站

    前不久在阿里买了一个服务器,然后开始第一次尝试搭建自己的个人网站.前端采用了bootstrap框架,后端采用的是PHP,数据库使用的是Mysql.新手第一次在linux下搭建遇见很多问题,在这里分享一 ...

  2. Linux下搭建PHP环境

    转载于: http://www.uxtribe.com/php/405.html 该站下有系列PHP文章. 在Linux下搭建PHP环境比Windows下要复杂得多.除了安装Apache,PHP等软件 ...

  3. Linux下搭建tomcat集群全记录(转)

    本文将讲述如何在Linux下搭建tomcat集群,以及搭建过程中可能的遇到的问题和解决方法.为简单起见,本文演示搭建的集群只有两个tomact节点外加一个apache组成,三者将安装在同一机器上:ap ...

  4. linux 下搭建php环境

    linux 下搭建php环境 1.下载apache (http://httpd.apache.org/download.cgi) 下载php组件 ( http://cn2.php.net/get/ph ...

  5. linux局域网搭建yum仓库(本地(file)、网络(ftp、http))

    linux局域网搭建yum仓库(本地(file).网络(ftp.http)) yum配置文件解释: [ ]:定义仓库,base为仓库的名字,可任意 name:仓库的简短文字描述 baseurl:仓库的 ...

  6. linux下搭建lamp环境以及安装swoole扩展

    linux下搭建lamp环境以及安装swoole扩展   一.CentOS 6.5使用yum快速搭建LAMP环境 准备工作:先更新一下yum源  我安装的环境是:apache2.2.15+mysql5 ...

  7. Linux下搭建tomcat集群全记录

    (转) Linux下搭建tomcat集群全记录 2011-10-12 10:23 6133人阅读 评论(1) 收藏 举报 tomcatlinuxapacheinterceptorsession集群 1 ...

  8. Linux下搭建JSP环境

    Linux下搭建JSP环境     作为一名Java EE系统架构工程师,经常需要搭配和建立JSP(Java Server Pages)的开发环境和运行环境,所以本人在平时的工作中积累了一些在Linu ...

  9. Linux环境搭建-在虚拟机中安装Centos7.0

    最近在空闲时间学习Linux环境中各种服务的安装与配置,都属于入门级别的,这里把所有的学习过程记录下来,和大家一起分享. 我的电脑系统是win7,所以我需要在win7上安装一个虚拟机-VMware,然 ...

随机推荐

  1. Go语言核心36讲(Go语言实战与应用十八)--学习笔记

    40 | io包中的接口和工具 (上) 我们在前几篇文章中,主要讨论了strings.Builder.strings.Reader和bytes.Buffer这三个数据类型. 知识回顾 还记得吗?当时我 ...

  2. 【POJ2018】【实数域上的二分】【dp】

    传送门:http://poj.org/problem?id=2018: 大概题意是求一个正整数数列 A 的平均数最大 长度不小于 L 的子段 我们可以二分答案 判定是否有一个长度不小于L的子段 平均数 ...

  3. Topcoder 14719 - RatingProgressAward(最小割)

    题面传送门 神仙最小割--好久没写过网络流了,故写题解以祭之( 首先考虑一个非常 trivial 的问题:如果知道排列顺序之后怎样计算最大值,用脚趾头想一下就能知道是原序列的最大子段和,因为每个课程之 ...

  4. 【机器学习与R语言】1-机器学习简介

    目录 1.基本概念 2.选择机器学习算法 3.使用R进行机器学习 1.基本概念 机器学习:发明算法将数据转化为智能行为 数据挖掘 VS 机器学习:前者侧重寻找有价值的信息,后者侧重执行已知的任务.后者 ...

  5. MicrosoftPowerBI—2019-nCov 新型冠状病毒肺炎多功能动态看板

    https://app.powerbi.cn/view?r=eyJrIjoiNmE0ZDU0MGItOTFjYy00MWYyLWFmZjMtMThkM2EwMzg5YjgyIiwidCI6ImQxNj ...

  6. 12-Add Digits

    寻找一个数的数根,用了暴力破解的方式,时间复杂度比较高 暂未想到O(1)的方式 Given a non-negative integer num, repeatedly add all its dig ...

  7. Docker网络设置及文件挂载

    网络设置–net=bridge- 默认选项,用网桥的方式来连接docker容器.–net=host- docker跳过配置容器的独立网络栈.–net=container:NAME_or_ID- 告诉d ...

  8. dubbo 协议的 K8s pod 存活探针配置

    背景 某项目采用微服务架构,dubbo 框架,K8s 方式部署. 其中 HTTP 协议由网关应用统一处理,大部分应用仅提供 dubbo 协议. 目标 应用某个实例(pod)状态异常时,尝试自动重启恢复 ...

  9. Sharding-JDBC 实现水平分表

    1.搭建环 (1) 技术: SpringBoot2.2.1+ MyBatisPlus + Sharding-JDBC + Druid 连接池(2)创建 SpringBoot 工程

  10. Linux基础命令---alias别名

    alias Alias不带参数或使用-p选项在标准输出上以"name=value"的形式打印别名列表.当提供参数时,为其值给定的每个名称定义一个别名.值中的尾随空格将导致在扩展别名 ...