专栏首页Linux入门到放弃linux从入门到放弃系列: 搭建web服务器
原创

linux从入门到放弃系列: 搭建web服务器

题主偶尔要做些小测试,需要后端有一个web网站,所以就上网搜一下,也就几条命令,示例如下:

一. 80端口搭建静态网页

以CentOS7.6为例:

1. 安装httpd服务:

yum -y install httpd

2.配置主页:

编辑 vi /var/www/html/index.html文件(index.html实际并不存在,vi 时候自动创建的),写入下面内容;

<marquee><font color=red><h1>hello,welcome to Tencent Qcloud!

3.启动httpd服务加载配置内容;

systemctl start httpd

4. 默认80端口,使用机器的地址 http://x.x.x.x,就可以访问这个静态网页;或者在机器后台使用curl测试一下,能返回http status 200以及上面的内容就说明网页正常了;

但是呢?

现在只有一个静态网站可以测试,如果我需要几个不同的测试网页呢?我总不能每次都找很多台机器一个一个的搭吧,那肯定就有人会说,用不同的端口来访问不同的网页不就行了么。。。如你所想,我也是这么考虑的;

二. 多端口搭建不同静态网页

还是在刚刚80已经搭好的这个机器上,题主打算额外使用8080,8081这2个端口来搭另外2个静态网页,使用vhost的方法,配合修改几个配置文件就可以了;

1.修改 etc/httpd/conf/extra/httpd-vhosts.conf 文件【如果没有,那就创建一个】,内容如下:

<VirtualHost *:80>
ServerName localhost
ServerAlias localhost
DocumentRoot /var/www/html/
ErrorLog /var/log/httpd/error.log
CustomLog /var/log/httpd/access.log common
#ServerSignature Off
</VirtualHost>

<VirtualHost *:8080>
ServerName first.test.com
ServerAlias localhost
DocumentRoot /var/www/first/
ErrorLog /var/log/httpd/error.log
CustomLog /var/log/httpd/access.log common
#ServerSignature Off
</VirtualHost>

<VirtualHost *:8081>
ServerName second.test.com
ServerAlias localhost
DocumentRoot /var/www/second/
ErrorLog /var/log/httpd/error.log
CustomLog /var/log/httpd/access.log common
#ServerSignature Off
</VirtualHost>

2. 修改主配置文件 etc/httpd/conf/httpd.conf

A. 去掉 include conf/extra/httpd-vhosts.conf 的注释【如果没有这行,那就手动加上】;

B. 修改根目录文件为 DocumentRoot "/var/www"

C. 修改虚拟主机根目录权限:

<Directory />
    # 允许根目录中的.htaccess生效并覆盖此处设置
    AllowOverride All
    # 允许该目录的所有用户操作权限
    Require all granted
</Directory>

3. 添加本地解析记录 /etc/hosts

127.0.0.1 test.com first.test.com second.test.com

这个解析记录只是为了本地测试方便,非必须步骤;

4.创建对应的web目录并赋权限

mkdir -p /var/www/first
mkdir -p /var/www/second
cp /var/www/html/index.html /var/www/first
cp /var/www/html/index.html /var/www/second

我图轻巧,直接把之前的index.html给复制过去了,建议你们修改index.html中的内容,方便与域名对应起来;

chmod -R -t /var/www/first
chmod -R -t /var/www/second

6. 重启apach服务

systemctl restart httpd

7.测试验证

A.检查httpd进程侦听的端口

[root@VM_1_5_centos conf]# netstat -apn | grep httpd
tcp6       0      0 :::8080                 :::*                    LISTEN      4806/httpd          
tcp6       0      0 :::80                   :::*                    LISTEN      4806/httpd          
tcp6       0      0 :::8081                 :::*                    LISTEN      4806/httpd 

B.检查网页内容:

[root@VM_1_5_centos conf]# curl 127.0.0.1
<marquee><font color=red><h1>hello,welcome to Tencent Qcloud!
[root@VM_1_5_centos conf]# curl 127.0.0.1:8080
<marquee><font color=red><h1>first,welcome to Tencent Qcloud!
[root@VM_1_5_centos conf]# curl 127.0.0.1:8081
<marquee><font color=red><h1>second,welcome to Tencent Qcloud!

本地curl验证的时候,也可以使用上面本地解析的域名来验证,也是能正常返回的;

通过以上的步骤,本地就通过侦听不同的端口,访问不同的静态网页了。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • HTTP 请求方法

    Http的请求方法代表了客户端想对服务器进行的操作,比如:POST、GET、HEAD、PUT、DELETE、TRACE、OPTIONS。 常用的不过于CRUD...

    Yif
  • Groovy 基本类型与闭包

    在根工程下自定义config.gradle可以直接在根project引用apply from:'config.gradle' 如果需要在app project...

    Yif
  • Gradle 之 Task 使用

    在根工程下自定义config.gradle可以直接在根project引用apply from:'config.gradle' 如果需要在app project...

    Yif
  • Gradle之Project Api 使用

    在根工程下自定义config.gradle可以直接在根project引用apply from:'config.gradle' 如果需要在app project...

    Yif
  • Flink rocksdb如何做checkpoint

    我们知道当设置 backend 为 RocksDBBackend 时,mapState.put 操作最终转化为 rockdb.put 操作,如:

    shengjk1
  • Android 系统架构

    Android 系统架构分为五层 从上到下依次为应用层、应用框架层、系统运行库层、硬件抽象层与Linux内核层。

    Yif
  • Groovy高级用法

    在根工程下自定义config.gradle可以直接在根project引用apply from:'config.gradle' 如果需要在app project...

    Yif
  • 传说中 6 个月都未必能全解开的 3 道 SQL 题,来挑战下?

    这 3 道巨难的题目,来自 itpub 的 SQL 数据库编程大赛。说起 itpub 就不得不说它与 Oracle 的渊源,多少大师都在这里诞生。想成为 SQL...

    Lenis
  • 这些Android系统样式中的颜色属性你知道吗?

    推荐阅读看完后彻底搞清楚Android中的 Attr 、 Style 、Theme

    开发者
  • BUG赏金 | 当我发现iFrame注入时的利用

    iFrame注入是一种非常常见的跨站脚本攻击。它包括已插入到网页或文章内容的一个或多个iframe代码,或一般下载一个可执行程序或进行其他动作使网站访客的电脑妥...

    PaperPen

扫码关注云+社区

领取腾讯云代金券