网站服务笔记

359 阅读4分钟

网站架构

常见的网站架构为:LAMP。

即Linux+Apache+MySql+PHP。其中Linux作为系统,承载各种服务;Apache作为前台服务程序,响应用户;MySql作为数据管理软件,存储用户的数据信息;PHP作为中间件,模拟用户将信息写入或读出数据库。

静态站点搭建

借助Apache搭建静态站点。并且实现在一台服务器上部署多个独立站点。

Apache简介

Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,是世界使用排名第一的Web服务器软件。 它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。

Apache的软件包名称为httpd。它提供了两个服务端口:80端口(http)和443端口(https)。

配置文件为**/etc/httpd/conf/httpd.conf**,子配置文件为**/etc/httpd/conf.d/*.conf**。

默认的网站资源存放目录为**/var/www/html/**

安装Apache

  1. 安装Apache:yum install -y httpd
  2. 启动服务:systemctl start httpd
  3. 设置开机启动:systemctl enable httpd
  4. 关闭防火墙:systemctl stop firewalld
  5. 关闭SELinux:setenforce 0
  6. 查看httpd状态:httpd -v 或 systemctl status httpd
  7. 测试:利用客户端,在浏览器中输入服务器的ip地址,即可正确访问。

firewalld:保护互联网对服务器的影响

SELinux:保护服务器内部程序对内部文件的访问,如限制ftp只能访问/var/ftp。可用getenforce来查看SELinux的状态

虚拟主机

使用虚拟主机的目的是在一台物理服务器上部署多个网站。而客户机访问网站时,将通过域名来区分用户所要访问的将是哪个网站。

我将在一台服务器上部署两个网站,分别为:

  1. www.a.org,网站资源存放目录为/var/www/html/a.org
  2. www.b.org,网站资源存放目录为/b.org

配置站点a.org

  1. 准备网站源码目录

    mkdir /var/www/html/a.org	
    vim /var/www/html/a.org/index.html
    
  2. 创建a.org的网站配置文件

    vim /etc/httpd/conf.d/a.org.conf	#后缀一定要是.conf
    #####编辑内容如下########
    <VirtualHost *:80>
    ServerName www.a.org	#利用域名区分网站
    DocumentRoot /var/www/html/a.org	#网站资源根目录
    <VirtualHost>
    
  3. 检查配置文件语法,重启服务

    httpd -t 	#检查配置文件语法是否错误
    systemctl restart httpd
    

配置站点b.org

  1. 准备网站源码目录

    mkdir /b.org
    vim /b.org/index.html
    
  2. 创建b.org的网站配置文件

    vim /etc/httpd/conf.d/b.org.conf
    #####编辑内容如下#######
    <VirtualHost *:80>
    ServerName www.b.org	#利用域名区分网站
    DocumentRoot /b.org	#网站资源根目录
    <VirtualHost>
    <Directory "/b.org">
    Require all granted	#因为网站资源根目录并没有放置在/var/www/html下,所以需要修改权限
    </Directory>
    
  3. 检查配置文件语法,重启服务

    httpd -t 	#检查配置文件语法是否错误
    systemctl restart httpd
    

客户端连接服务器测试

在客户端,编辑/etc/hosts,将域名与服务器ip地址做映射。

vim /etc/hosts
############编辑内容如下#############
服务器IP	www.a.org
服务器IP   www.b.org

在浏览器中输入想要访问的网站域名,即可成功访问。

对于字符界面,我们可以利用安装elinks软件包来访问网站

使用方式是:elinks 域名/ip地址

动态站点

动态站点与静态站点的区别在于内容是实时更新的。以部署论坛系统discuz为例

基础环境

关闭SELinux与防火墙。

安装LAMP

  1. 安装所需服务:yum install -y httpd mariadb-server mariadb php php-mysql gd php-gd
  2. 启动服务:systemctl start httpd mariadb
  3. 设置开机启动:systemctl enable httpd mariadb

安装Discuz

  1. 导入Discuz网站源码

    wget http://download.comsenz.com/DiscuzX/2.5/Discuz_X2.5_SC_UTF8.zip  #下载源码
    mkdir -p /webroot/discuz	#创建网站资源存放目录
    unzip Discuz_X2.5_SC_UTF8.zip
    cp -rf upload/* /webroot/discuz/		#将源码复制到资源存放目录
    chown -R apache.apache /webroot/discuz/	#修改权限
    
  2. 配置虚拟主机

    vim /etc/httpd/conf.d/discuz.conf
    ########配置内容如下##############
    <VirtualHost *:80>
    ServerName www.discuz.com	#利用域名区分网站
    DocumentRoot /webroot/discuz	#网站资源根目录
    <VirtualHost>
    
    <Directory "/webroot/discuz">
    Require all granted
    </Directory>
    

    建议重启httpd服务,以将配置读入内存

  3. 准备数据库

    mysql	#进入mysql界面
    MariaDB[(none)]> create database discuz;
    
  4. 安装discuz

    在hosts中,添加discuz的域名解析后,进入discuz进行配置。

  5. 客户端测试

    在hosts中,添加域名解析之后,即可进入discuz体验。