当前位置:首页 > 编程语言 > 正文内容

如何在Apache网站服务器上使用Vultr CDN

a811625532年前 (2024-02-11)编程语言18

是一个 *** 服务器应用程序,使用您的域名 托管和交付 *** 应用程序。向 Apache *** 服务器发出的每个请求都会增加服务器负载,并影响 *** 应用程序的总体性能。通过集成 Vultr CDN URL,Web 服务器会使用你的 CDN 发送特定请求,从而加快你的 Web 应用程序内容交付过程。

本文将介绍如何在 Apache *** 服务器上使用 Vultr CDN。您将设置 Apache 虚拟主机配置,将特定请求模式转发到 Vultr CDN URL,同时在源服务器 URL 上保持较轻的请求。

准备工作

开始之前:

  • 使用 Vultr Marketplace 应用程序。
  • 设置指向公共服务器 IP 地址的域 。
  • 以具有 sudo 权限的非 root 用户身份。

定位 Apache 虚拟主机配置

  1. 测试 Apache 配置是否存在错误。
    $ apachectl configtest
    
  2. 切换到 Apache 数据主目录。
    $ cd /etc/apache2/
    
  3. 使用您的域名搜索 Apache 目录中的所有文件,以验证活动虚拟主机配置文件。用您的实际域名替换 example.com
    $ grep -r "example.com" /etc/apache2/
    

    Output:

    /etc/apache2/sites-available/example.com.conf:  ServerName www.example.com

    上述输出返回 example.conf 作为与 example.com 域相关的活动虚拟主机配置文件。默认情况下,如果服务器上没有可用的虚拟主机配置,Apache 会使用 /etc/apache2/sites-available/000-default.conf 文件。

  4. 查看虚拟主机配置文件并验证工作中的 DocumentRoot 目录。
    $ cat /etc/apache2/sites-available/example.com.conf | grep DocumentRoot
    

    Output:

    DocumentRoot /var/www/html
  5. 切换到文档根目录。
    $ cd /var/www/html/
    
  6. 创建一个新的 images 目录来测试 Apache 请求模式。
    $ sudo mkdir images
    
  7. 切换到目录。
    $ cd images
    

    将样本文件上传到该目录,以测试 Apache 的请求模式。

*** 1:设置修改响应

Apache 响应修改会匹配请求,并将原始请求 URL 修改为 Vultr CDN URL。响应修改过程使用 mod_substitutemod_filter 模块来过滤和修改指向你的 Vultr CDN URL 的请求。请按照以下步骤设置响应修改,并将请求模式转发到你的 Vultr CDN。

  1. 启用 Apache mod_substitute 模块。
    $ sudo a2enmod substitute
    

    输出:

    Enabling module substitute.
    To activate the new configuration, you need to run:
    systemctl restart apache2
  2. 启用 Apache mod_filter 模块,按 MIME 类型过滤请求。
    $ sudo a2enmod filter
    
  3. 重启 Apache 以激活模块。
    $ sudo systemctl restart apache2
    
  4. 使用 Nano 等文本编辑器打开 Apache 虚拟主机配置文件。
    $ sudo nano /etc/apache2/sites-available/example.com.conf
    
  5. 在文件的 </VirtualHost> 指令之前添加以下配置。用实际值替换 example.comcdn-example88.vultrcdn.com
    AddOutputFilterByType SUBSTITUTE text/html
    Substitute s|example.com/images/|cdn-example88.vultrcdn.com/images/|i
    Substitute s|example.com/css/|cdn-example88.vultrcdn.com/css/|i
    Substitute s|example.com/js/|cdn-example88.vultrcdn.com/js/|i
    

    保存并关闭文件。

    上述响应修改配置可匹配 imagescss 或 js 目录模式下的所有请求。匹配请求模式下的所有文件都会被修改为 Vultr CDN URL。例如,请求 example.com/images/image.png 会被修改为 cdn-example88.vultrcdn.com/images/image.png 。在配置中:

    AddOutputFilterByType:按 MIME 类型过滤请求模式。 /text/html 匹配 HTML 请求,包括图像、样式表和脚本等嵌入元素。其他 MIME 类型包括

    •  text/css,application/javascript,application/custom,image/jpg,image/pngimage/webp

    ,可根据 *** 应用程序结构过滤请求。

    • Substitute s|.....|...|:

    转换源 s| URL 以匹配目标 | Vultr CDN URL。例如, Substitute s|example.com/images/|cdn-example88.vultrcdn.com/images/|iexample.com/images 请求模式修改为你的 Vultr CDN URL cdn-example88.vultrcdn.com/images
    $1:加载初始请求类型,以匹配正确的 Vultr CDN URL。
    |i : 匹配请求模式中的所有大小写格式。例如, example.com/images/IMAGE.pngexample.com/images/logo.png 都会被修改为相应的 Vultr CDN URL。

    要在配置中匹配其他请求模式,可添加新的 Substitute 指令,将请求模式修改为 Vultr CDN URL。修改后的 Apache 虚拟主机配置应如下所示:

    APACHECONFCopy

    <VirtualHost *:80>
    <Directory /var/www/html/>
    Options -Indexes
    Require all granted
    </Directory>
    ServerName example.com
    DocumentRoot /var/www/html
    DirectoryIndex index.htm index.html
    AddOutputFilterByType SUBSTITUTE text/html
    Substitute s|example.com/images/|cdn-example88.vultrcdn.com/images/|i
    Substitute s|example.com/css/|cdn-example88.vultrcdn.com/css/|i
    Substitute s|example.com/js/|cdn-example88.vultrcdn.com/js/|i
    </VirtualHost>
    
  6. 测试 Apache 配置是否存在错误。
    $ apachectl configtest
    
  7. 重启 Apache 以应用配置更改。
    $ sudo systemctl restart apache2
    

*** 2:设置重定向

Apache 会使用 mod_rewite 模块将原始请求 URL 重写为 Vultr CDN URL,从而重定向特定请求类型。每个请求模式都会被重定向到相应的 Vultr CDN URL,该 URL 会根据请求提供缓存数据。例如,请求 example.com/image.png 会重定向到 CDN URL cdn-example88.vultrcdn.com/image.png。请按照以下步骤将特定请求模式重定向到你的 Vultr CDN URL。

  1. 启用 Apache mod_rewrite 模块。
    $ sudo a2enmod rewrite
    

    输出:

    Enabling module rewrite.
    To activate the new configuration, you need to run:
    systemctl restart apache2
  2. 重启 Apache *** 服务器以激活模块。
    $ sudo systemctl restart apache2
    
  3. 打开 Apache 虚拟主机配置文件。
    $ sudo nano /etc/apache2/sites-available/example.com.conf
    
    •  在文件的 </VirtualHost> 指令之前添加以下配置。用实际值替换 example.comcdn.example88.vultrcdn.com
      RewriteEngine On
      RewriteCond %{HTTP_HOST} ^example.com
      RewriteRule \.(jpg|jpeg|png|gif|webp|css|js|scss|svg|pdf|txt)$ https://cdn-example88.vultrcdn.com%{REQUEST_URI} [L,R=301]
      

      保存并关闭文件。

      上述配置会将所有符合  .jpeg.jpg.png,,.webp,.js,.css  文件类型的请求重定向到 Vultr CDN URL。在配置中

      RewriteEngine On: 启用 Apache mod_rewrite 模块。
      RewriteCond %{HTTP_HOST} : 设置请求重写条件,以匹配主机域名 URL 模式。
      RewriteRule:以正则表达式格式定义重写匹配请求模式的重定向规则。

      • \.(jpg|jpeg|png|gif|webp|css|js|scss|svg|pdf|txt)

      值会将所有声明文件类型的请求匹配到你的 Vultr CDN URL。例如,请求 https://example.com/image.png 会重定向到 https://cdn-example88.vultrcdn.com/image.png
      [R=301,L]:所有匹配请求到你的 Vultr CDN URL,状态代码为 301 Moved PermanentlyL 设置重定向条件 last 重定向,不需要额外的重写规则。

      修改后的 Apache 虚拟主机配置应如下所示:

       

      <VirtualHost *:80>
      <Directory /var/www/html/>
      Options -Indexes
      Require all granted
      </Directory>
      ServerName example.com
      DocumentRoot /var/www/html
      DirectoryIndex index.htm index.html
      RewriteEngine On
      RewriteCond %{HTTP_HOST} ^example.com
      RewriteRule \.(jpg|jpeg|png|gif|webp|css|js|scss|svg|pdf|txt)$ https://cdn-example88.vultrcdn.com%{REQUEST_URI} [L,R=301]
      </VirtualHost>
      
  4. 测试 Apache 配置是否存在错误。
    $ apachectl configtest
    
  5. 重新启动 Apache *** 服务器以应用配置更改。
    $ sudo systemctl restart apache2
    

小结

您已经设置了 Apache *** 服务器,将请求模式转发到 Vultr CDN URL。根据您的主机环境,您可以在 文件或虚拟主机配置文件中应用请求转发规则,以提高 *** 应用程序的性能和用户体验。对于每种配置 *** ,请查看浏览器开发工具并导航到 *** 来源选项卡,以验证由 Vultr CDN URL 交付的所有文件。

扫描二维码推送至手机访问。

版权声明:本文由2345好导航站长资讯发布,如需转载请注明出处。

本文链接:http://2345hao.cn/blog/index.php/post/8189.html

分享给朋友:

“如何在Apache网站服务器上使用Vultr CDN” 的相关文章

15种最佳编程字体以帮助您更愉悦地敲代码

15种最佳编程字体以帮助您更愉悦地敲代码

经过几个小时的努力工作后,您是否感到眼睛疲劳或难以阅读代码?许多程序员在开始头疼之前从没想过要切换字体。 如果您经常发现在尝试扫描一千行代码时眼睛模糊不清,或者在停止编码数小时后头疼,那么可能是时候尝试一种新字体了。即使您没有遇到这些症状,设计良好的字体通常也比默认系统字体具有更好的可读性。...

20个最佳Laravel免费和付费教程资源

20个最佳Laravel免费和付费教程资源

Laravel多年来一直是PHP应用程序开发的摇滚明星,这是有充分理由的。庞大的生态系统、活跃的社区、强大的就业市场、成功的初创公司——它拥有一切让采用新技术变得值得的东西。 如果你想学习Laravel,你不需要更进一步。通过浏览本指南,您可以找到最适合您的Laravel教程,与您的知识水平和...

2022年PHP开发人员的平均工资统计报告

2022年PHP开发人员的平均工资统计报告

PHP开发:有些人认为它是,另一些人认为它是一种过时的技术,不值得花时间学习。但是这些数字说明了什么,尤其是当您查看PHP开发人员的薪水时? 虽然肯定有许多更新、更炫、更令人兴奋的语言,但PHP仍然是后端Web开发的可靠主食,也是许多雇主仍在寻找的技能。 有兴趣自己成为PHP开发人员吗?我们...

XaaS:一切皆服务模型(包含10个示例类别)

XaaS:一切皆服务模型(包含10个示例类别)

有时似乎有太多的商业首字母缩写词要记住。随着快速变化的技术进步和云计算的出现,新的类别将不断涌现。XaaS 就是这样一个最新的补充。 该领域的大多数读者都知道、和。但是你听说过XaaS吗? XaaS(一切皆服务)涵盖了一切:现在一切都可以成为服务。 这听起来好像很复杂的样子,但别担心——我...

安装DragonflyDB内存数据存储以提升网站性能

安装DragonflyDB内存数据存储以提升网站性能

DragonflyDB是一个内存数据存储应用程序,可以帮助提高网站性能。 DragonflyDB DragonflyDB是一个免费的内存数据存储应用程序,运行在Linus OS上。它使用每核线程架构来减少延迟。Dragonfly与Redis和Memcached兼容。它是KeyDB的合...

Cloudflare即将完全弃用Host API集成

Cloudflare即将完全弃用Host API集成

Cloudflare已宣布弃用HOST API集成,这将影响Cloudflare的传统主机和经销商合作伙伴。 Cloudflare弃用HOST API Cloudflare Legacy Host API将于2022年11月1日正式被弃用。Cloudflare表示,由于支持和维护程序...