网站模板库
  • 首页
  • web前端工具
    • HTML/JS转换工具
    • JS/HTML格式化工具
    • 字母/英文大小写转换工具
    • robots.txt文件生成工具
    • Js压缩/格式化工具
    • Css在线压缩工具_代码格式化
  • 关于我们
    • 免责声明
    • 联系我们
    • 广告服务
    • 服务项目
    • 关于我们
    • 网站轮播
    • 公告
    • 成都优优科技专用
    • 按行业分类
  • web学院
    • 服务器教程
    • 学习资料
      • 基础书籍
      • 交互书籍
      • 入门教程
      • 特效分类
    • 案例分享
    • web资讯
  • 网页特效
    • 图片特效
    • 导航特效
    • 滑动按钮
    • 表单特效
    • 文字特效
    • 弹窗特效
    • 其他特效
  • 织梦模板
    • 科技/电子/数码/通信
    • 文化/艺术/广告/传媒
    • 装修/设计/家居/家具
    • 基建/施工/地产/物业
    • 餐饮/酒店/旅游/票务
    • 食品/果蔬/饮料/日用
    • 服饰/珠宝/礼品/玩具
    • 摄影/婚庆/家政/生活
    • 运动/健身/体育/器材
    • 学校/教育/培训/科研
    • 美容/保健/医院/医疗
    • 金融/财税/咨询/法律
    • 政府/组织/集团/协会
    • 汽车/物流/交通/搬运
    • 机械/设备/制造/仪器
    • 化工/环保/能源/材料
    • 农业/畜牧/养殖/宠物
    • 其他模版
    • IT/软件/信息/互联网
  • 手机模板
    • 手机APP模板
    • 微信小程序模板
    • wap
  • 网站模板
    • joomla模板
    • Drupal模板
    • z-blog模板
    • EyouCms模板
    • Bootstrap模板
    • 帝国cms模板
    • CmsEasy模板
    • MetInfo模板
    • 购物商城模板
      • Shopify主题
      • PrestaShop主题
    • 后台模板
    • 纯HTML模板
    • ecshop模板
    • phpwind模板
    • pbootcms模板
    • phpcms模板
    • wordpress模板
    • discuz模板
  • 教程
    • 织梦教程
    • Discuz教程
    • WordPress教程
    • Phpcms教程
    • Phpwind教程
    • ECShop教程
    • Joomla教程
    • Drupal教程
    • zblog教程
    • EyouCMS教程
    • 帝国cms教程
    • MetInfo教程
    • CmsEasy教程
登录
当前位置:网站模板库 > web学院 > 服务器教程 > 如何在linux搭建web服务器
商业源码 服务器教程 2023-12-16 2:42:01

如何在linux搭建web服务器

如何在linux搭建web服务器,第1张

可以参考如下Web服务器的建立过程。示例环境及web服务器软件:

Ubuntu 1204

LAMP(Linux,Apache,Mysql,PHP)

1、安装Apache

(1)在安装HTTP Server之前需安装APR(Apache Portable Runtime)和APR-util安装APR

$ tar zxvf apr-146targz

$ cd apr-146/

$ /configure

$ make

$ sudo make install

(2)安装APR-util

$ tar zxvf apr-util-141targz

$ cd apr-util-141

$ /configure –with-apr=/usr/local/apr (whereis apr)

$ make

$ sudo make install

(3)安装httpd-242tarbz2默认安装位置/usr/local/apache2网页放在/usr/local/apache2/htdocs配置文件/usr/local/apache2/conf/httpdconf

$ tar jxvf httpd-242tarbz2

$ cd httpd-242/

$ /configure

$ make

$ sudo make install

(4)启动HTTP Server$ sudo /usr/local/apache2/bin/apachectl startAH00558: httpd: Could not reliably determine the server’s fully qualified domain name, using 127011 Set the ‘ServerName’ directive globally to suppress this message

(5)查看http是否正常运行$ netstat -a | grep httptcp 0 0 :http : LISTEN

(6)在浏览器输入127001如果正常应该显示“It works!”

2、安装MySQL

(1)、下载安装mysql-5525targz,默认安装位置/usr/local/mysql/

$ tar zxvf mysql-5525targz

$ cd mysql-5525/

$ sudo groupadd mysql

$ sudo useradd -r -g mysql mysql

$ cmake

$ make

$ sudo make install

$ cd /usr/local/mysql/

$ sudo chown -R mysql

$ sudo chgrp -R mysql

$ sudo scripts/mysql_install_db –user=mysql

$ sudo chown -R root

$ sudo chown -R mysql data/

$ sudo cp support-files/my-mediumcnf /etc/mycnf

$ sudo cp support-files/mysqlserver /etc/initd/mysqlserver

(2)、启动MySQL:

方法1:$ sudo service mysqlserver start

方法2:$ sudo /usr/local/mysql/bin/mysqld_safe --user=mysql &

3、安装PHP

(1)安装下载php-544targz

$ tar zxvf php-544targz

$ cd php-544

$ /configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql --with-mysqli --enable-mbstring --with-mcrypt(可能需要安装libmcrypt-dev )

$ sudo make install

$ sudo cp phpini-development /usr/local/lib/phpini

(2)配置HTTP Server使之支持PHPapache配置文件/usr/local/apache2/conf/httpdconf修改或添加如下配置

<;IfModule dir_module>

DirectoryIndex indexphp

<;/IfModule>

<;FilesMatch \php$>

SetHandler application/x-httpd-php

<;/FilesMatch>

(3)重启HTTP Server

$ sudo /usr/local/apache2/bin/apachectl restart

 首先,到微软官网下载符合系统位数的Apache和PHP  一、安装并配置Apache

  Apache版本:Apache2418

  解压目录:D:Acpache24

  1、下载回来的是解压文件,解压好放到要安装的位置。

  2、打开Apache24\conf下httpdconf 文件,修改以下关键位置,用记事本打开即可。

  ServerRoot修改为Apache程序的位置:

  修改前:ServerRoot “c:/Apache24”;

  修改前:ServerRoot “D:/Apache24”;

  修改Apache默认的网站的根目录:

  修改前:DocumentRoot “c:/Apache24/htdocs”;

  修改后:DocumentRoot “D:/Apache24/htdocs”;

  修改根目录的选项:

  修改前:

  《Directory “c:/Apache24/htdocs”》

  Options Indexes FollowSymLinks

  AllowOverride null

  Require all granted

  《/Directory》

  修改后:

  《Directory “D:/Apache24/htdocs”》

  Options Indexes FollowSymLinks

本教程假设你已有一台在运行的Ubuntu服务器,网络方面已设置好,而且可以通过SSH进行访问。

Apache2是许多安装的Linux发行版使用的默认Web服务器。它不是对所有环境来说唯一可用的Web服务器,也不是最佳的Web服务器,但是它适合许多使用场景。在安装过程中,系统可能会询问你哪个Web服务器要自动重新配置。选择“apache2”即可。

安装Apache2

使用下面这个命令,安装Apache2及其他库。

$ sudo apt-get -y install apt-get install apache2 apache22-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt libapache2-mod-suphp libopenssl-ruby libapache2-mod-ruby

更新时区(TimeZone)和检查正确时间

为了减小共享数据或镜像数据方面的混淆,所有服务器在运行时都应该尽可能接近同步状态。一些加密密钥管理系统需要准确的时间。最后,就企业服务器而言,《萨班斯-奥克斯利法案》(Sarbanes-Oxley)和《健康保险可携性及责任性法案》(HIPAA)的安全规则要求正确的时间戳机制。

$ sudo apt-get -y install openntpd tzdata

$ sudo dpkg-reconfigure tzdata

$ sudo service openntpd restart

禁止AppArmor冲突

虽然AppArmor这个套件的确提供了一层额外的安全,但在我看来,需要为每个系统创建自定义配置文件。这不是本教程所探讨的内容。所以眼下,我们会禁用AppArmor,防止与任何默认的配置发生冲突。

$ sudo /etc/initd/apparmor stop

$ sudo update-rcd -f apparmor remove

$ sudo apt-get remove apparmor apparmor-utils

注意:如果是生产环境下的Web服务器,不建议禁用AppArmor。如果有些人想创建自定义的AppArmor配置文件,请参阅官方说明文档(http://wikiapparmornet/indexphp/Documentation)。

阻止分布式拒绝服务(DDoS)攻击

DDoS攻击是一种分布式拒绝服务攻击。有一个Apache模块可以阻止这类攻击。

$ sudo apt-get -y install libapache2-mod-evasive

$ sudo mkdir -p /var/log/apache2/evasive

$ sudo chown -R www-data:root /var/log/apache2/evasive

把下面这个命令添加到mod-evasiveload的末尾处。

$ sudo nano /etc/apache2/mods-available/mod-evasiveload DOSHashTableSize 2048

DOSPageCount 20 # 请求同一页面的最大数量

DOSSiteCount 300 # 同一侦听器上同一客户端IP请求任何对象的总数量

DOSPageInterval 10 # 页面数量阈值的间隔

DOSSiteInterval 10 # 站点数量阈值的间隔

DOSBlockingPeriod 100 # 客户机IP被阻止的时间段

DOSLogDir “/var/log/apache2/evasive”

DOSEmailNotify admin@domaincom

阻止Slowloris攻击

还有一个Apache模块可以阻止Slowloris攻击,不过模块名称取决于你使用的Ubuntu的具体版本。如果是Ubuntu 1210或以后版本:

$ sudo apt-get -y install libapache2-mod-qos

然后,检查qosconf中的配置:

$ sudo nano /etc/apache2/mods-available/qosconf

## 服务质量方面的设置

# 处理来自多达100000个不同IP的连接

QS_ClientEntries 100000

# 只允许每个IP仅50条连接

QS_SrvMaxConnPerIP 50

# 活动TCP连接的最大数量限制在256条

MaxClients 256

# 当70%的TCP连接被占用时,禁用保持活动连接状态

QS_SrvMaxConnClose 180

# 最小请求/响应速度(拒绝阻塞服务器的慢速客户端,即slowloris保持连接开启,不提出任何请求):

QS_SrvMinDataRate 150 1200

# 并限制请求标题和主体(注意,这还限制了上传和发帖请求):

# LimitRequestFields 30

# QS_LimitRequestBody 102400

注意:如果你运行1204之前的Ubuntu版本,改而使用下面这个命令:

$ sudo apt-get -y install libapache2-mod-antiloris

检查antilorisconf中的配置

$ sudo nano /etc/apache2/mods-available/antilorisconf

# 每个IP地址处于READ状态的最大并行连接数量

IPReadLimit 5

阻止DNS注入攻击

Spamhaus这个模块使用域名系统黑名单(DNSBL),目的是为了阻止通过Web表单实现的垃圾邮件转发,防止URL注入攻击,阻止来自机器人程序的http DDoS攻击,通常保护服务器,远离已知的恶意IP地址。

$ sudo apt-get -y install libapache2-mod-spamhaus

$ sudo touch /etc/spamhauswl Append the config to apache2conf

$ sudo nano /etc/apache2/apache2conf

MS_METHODS POST,PUT,OPTIONS,CONNECT

MS_WhiteList /etc/spamhauswl

MS_CacheSize 256

重启Apache装入新模块

$ sudo service apache2 restart

现在Web服务器已安装完毕,并在正常运行。将Web浏览器指向你的域,即可看到证明你一切正常的默认消息。作为最后的检查机制,运行下面这个命令,看看你的服务器有没有任何错误信息。要是有错误信息,你需要上谷歌搜索一下,立马解决这些错误。

$ sudo tail -200 /var/log/syslog

Apache HTTP Server 是目前应用最多的 web server 服务软件之一,Apache提供了许多强大的功能,而且可以通过其他模块进行扩展。Apache HTTP Server是一个开源的跨平台的服务器软件,目前大部分网站都采用Apache作为网站HTTP服务器。

在本教程中,我们将向你介绍如何在Debian 10中安装Apache并配置虚拟主机。

首先你得有一台安装了Debian的服务器,这样便于你在上面进行演练操作。如果你没有可以考虑自己在虚拟机中安装一个Debian 10。当然,我也推荐您购买一台 阿里云VPS 或者 腾讯云VPS 虚拟主机,如果你更喜欢国外服务器,推荐你尝试 Vultr上的VPS ,注册即送$50美元体验,性价比非常高。

当然有主机了,为安全考虑不建议使用root账号,建议创建一个具有 sudo权限的用户 。

同时,你的Debian已经安装了PHP,如果没有安装可以参考「 如何在Debian 10安装PHP 」教程。

Apache的安装包在Debian的默认源中提供了,所以只需要执行安装命令即可安装。执行安装Apache命令之前我们需要先更新一下系统,命令如下:

安装完成后,apache将默认自动运行,我们通过以下命令查看apache服务状态。

输出命令类似如下:

开启防火墙可以加强服务器的安全性,我们通过防火墙只开放需要访问的端口。可以通过防火墙管理软件 ufw 或者 nftables 进行管理。

如果系统没有安装 ufw 或者 nftables ,可以通过如下命令直接安装。

UFW 如果需要开启 (HTTP)80 或者 (HTTPS)443 端口,可以通过执行如下命令开启:

nftables 如果需要开启 (HTTP)80 或者 (HTTPS)443 端口,可以通过执行如下命令开启:

这个更建议使用 UFW 作为防火墙管理软件,相对来说操作更简单。

Apache安装完成后,需要校验一下Apache是否正常工作。校验方法是打开浏览器,在地址栏中输入 http://ip_or_domain ,如果能正常显示类似如下界面,说明Apache安装成功运行正常。

Apache安装完成后,默认的安装配置文件路径如下:

我们在 /var/www 目录中创建一个网站目录,例如 examplecom 。默认情况,目录结构如下:

可以通过以下命令创建:

在该目录下我们创建一个 indexphp 文件,文件内容如下:

首先,进入 /etc/apache2/sites-available 目录,创建配置文件 examplecomconf 文件,并在其中添加如下内容。

您可以根据需要命名虚拟主机配置文件,但是建议使用域名作为配置文件的名称。

要启用新的虚拟主机文件,请创建一个从虚拟主机文件到启用站点的目录的符号链接,该链接在启动过程中由Apache读取。

在Debian系统中,您可以使用名为 a2ensite 的帮助程序脚本来启用虚拟主机,命令如下:

当然你也可以选择手动创建符号链接,如下所示:

启用配置后,通过键入以下命令测试语法是否正确:

如果一切正常,会输出如下内容:

重启服务,使配置生效,命令如下:

在浏览器地址栏中输入 http://examplecom ,正常情况下你将看到如下输出:

至此,本教程交接完毕。

通过本教程,你将学会如何在Debian 10上安装Apache并设置虚拟主机,如果你有自己的的Debian 10主机不妨按照教程进行安装尝试,如果没有自己的Debian自己建议可以安装一台Debian10虚拟主机或者去 阿里云 或者 腾讯云 或者 Vultr 购买一台自己的VPS服务器。

这是CentOS7编译安装方法(或者你也可以yum安装,这种安装方法版本较低):

CentOS 下编译安装Apache

卸载原有的apache

首先从 http://httpdapacheor 下载apache源码包httpd-244targz

然后从 http://aprapacheorg 下载apr-146targz和apr-util-151targz

然后从 http://sourceforgenet/ 下载pcre-832targz和pcre-devel-832targz

先装gcc和make

yum -y install gcc

yum -y install make

yum -y install gcc-c++ 没有这个gcc-c++一会编译不prce

切到下载好的源码包目录,本人是~/Download

安装apr:

tar -zvxf apr-146targz

cd apr-146

/configure --prefix=/usr/local/apr

make && make install

安装apr-util

tar -zvxf apr-util-151targz

cd apr-util-151

/configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

make && make install

安装pcre

tar -zvxf pcre-832targz

cd pcre-832

/configure

make && make install

安装pcre-devel

如果已经安装好了pcre 一定要安装

tar –zxvf pcre-devel-832targz

cd pcre-devel-832

/configure

make && make install

安装apache 一定要先装上面那三个不然编译不了

tar -zvxf httpd-244targz

cd httpd-244

/configure --prefix=/usr/local/apache –with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util

make && make install

配置/usr/local/apache/conf下的httpconf文件(先备份)。

1、服务器

#ServerName wwwexamplecom:80 前的#号删除。

2、目录访问权限

<Directory />

Options FollowSymLinks

AllowOverride None

Order deny,allow

Allow from all #修改为此样

</Directory>

3、默认字符集

AddDefaultCharset utf-8 #指定默认字符集

4、启动httpd

cd bin/

/apachectl start | restart | stop

将httpd添加为系统服务

cp apachectl /etc/initd/httpd

/etc/initd/

编辑httpd,在第二行加入如下信息:

# chkconfig: 345 85 15

# description: Activates/Deactivates Apache Web Server

以上两句必须添加,否则会提示“httpd服务不支持”;第一行3个数字参数意义分别为:哪些Linux级别需要启动httpd(3,4,5);启动序号(85);关闭序号(15)。

添加启动信息(Ubuntu与CentOS有区别)

chkconfig –add httpd

查看是否添加成功

chkconfig --list

服务器控制

service httpd start | restart | stop

服务器 命令 如果 可以通过 配置文件
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 如何在linux搭建web服务器

商业源码 钻石

分享到:
上一篇
云服务器和传统服务器哪个好,有什么区别
下一篇
小米账户登录不了,总是显示服务器错误。怎么才能手机登录上?

相关推荐

购买了阿里云服务器和域名,怎么搭建网站?

购买了阿里云服务器和域名,怎么搭建网站?

普通服务和云服务器的区别是什么?

普通服务和云服务器的区别是什么?

梦幻西游中最嚣张的服战队到底有多强?

梦幻西游中最嚣张的服战队到底有多强?

中国电信租服务器么?

中国电信租服务器么?

0条评论

发表评论 取消回复

要发表评论,您必须先登录。

提供最优质的资源集合

立即查看 了解详情
网站模板库

主题/付费下载/查看/余额管理/自定义积分,集成支付,卡密,推广奖励等。

本站导航
  • 链接标题
友情链接
  • 链接标题
快速搜索
本站由钛宇宙强力驱动
友情链接:
    商业源码网蜀ICP备2023005044号
    网站模板库
    • 登录
    • 注册
    网站模板库
    • 首页
    • web前端工具►
      • HTML/JS转换工具
      • JS/HTML格式化工具
      • 字母/英文大小写转换工具
      • robots.txt文件生成工具
      • Js压缩/格式化工具
      • Css在线压缩工具_代码格式化
    • 关于我们►
      • 免责声明
      • 联系我们
      • 广告服务
      • 服务项目
      • 关于我们
      • 网站轮播
      • 公告
      • 成都优优科技专用
      • 按行业分类
    • web学院►
      • 服务器教程
      • 学习资料►
        • 基础书籍
        • 交互书籍
        • 入门教程
        • 特效分类
      • 案例分享
      • web资讯
    • 网页特效►
      • 图片特效
      • 导航特效
      • 滑动按钮
      • 表单特效
      • 文字特效
      • 弹窗特效
      • 其他特效
    • 织梦模板►
      • 科技/电子/数码/通信
      • 文化/艺术/广告/传媒
      • 装修/设计/家居/家具
      • 基建/施工/地产/物业
      • 餐饮/酒店/旅游/票务
      • 食品/果蔬/饮料/日用
      • 服饰/珠宝/礼品/玩具
      • 摄影/婚庆/家政/生活
      • 运动/健身/体育/器材
      • 学校/教育/培训/科研
      • 美容/保健/医院/医疗
      • 金融/财税/咨询/法律
      • 政府/组织/集团/协会
      • 汽车/物流/交通/搬运
      • 机械/设备/制造/仪器
      • 化工/环保/能源/材料
      • 农业/畜牧/养殖/宠物
      • 其他模版
      • IT/软件/信息/互联网
    • 手机模板►
      • 手机APP模板
      • 微信小程序模板
      • wap
    • 网站模板►
      • joomla模板
      • Drupal模板
      • z-blog模板
      • EyouCms模板
      • Bootstrap模板
      • 帝国cms模板
      • CmsEasy模板
      • MetInfo模板
      • 购物商城模板►
        • Shopify主题
        • PrestaShop主题
      • 后台模板
      • 纯HTML模板
      • ecshop模板
      • phpwind模板
      • pbootcms模板
      • phpcms模板
      • wordpress模板
      • discuz模板
    • 教程►
      • 织梦教程
      • Discuz教程
      • WordPress教程
      • Phpcms教程
      • Phpwind教程
      • ECShop教程
      • Joomla教程
      • Drupal教程
      • zblog教程
      • EyouCMS教程
      • 帝国cms教程
      • MetInfo教程
      • CmsEasy教程

      弹窗标题

      这是一条网站公告,可在后台开启或关闭,可自定义背景颜色,标题,内容,用户首次打开关闭后不再重复弹出,此处可使用html标签...