【问题标题】:php-Codeigniter:route certain url to specific onephp-Codeigniter:将某些 url 路由到特定的
【发布时间】:2014-06-12 00:41:43
【问题描述】:

我想把js、css、图片等静态资源加速到CDN。 因为静态资源和动态资源必须分开,所以我需要将domain.com/src/....转为src.domain.com/...

src文件夹和CodeIgniter的application文件夹在同一个目录下,更新静态源的所有链接会花费太多时间。

例如:我想让domain.com/src/images/1.jpg 成为src.domain.com/images/1.jpg 的别名

src.domain.com 由 CDN 和其他 url 加速,例如domain.com/controller1domain.com/controller2 不需要别名为src.domain.com/controller1src.domain.com/controller2

我阅读了关于 codeigniter 路由的手册,但我没有明白。

这是.htaccess:

<IfModule mod_rewrite.c>
 RewriteEngine On
  RewriteBase /
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)$ index.php?/$1 [L]
  RewriteCond %{REQUEST_URI} ^src\/
  RewriteRule ^src\/(.*)$ http\:\/\/src1\.domain\.com\/$1
</IfModule>

【问题讨论】:

    标签: php .htaccess codeigniter url routes


    【解决方案1】:

    试试这个,创建一个.htaccess 文件并上传到您的网络目录(codeigniter 目录)的/

    RewriteEngine On
    RewriteCond %{REQUEST_URI} ^src\/
    RewriteRule ^src\/(.*)$ http\:\/\/src\.domain\.com\/$1 [R=301,L]
    

    它将http://domain.com/src/images/1.jpg重定向到http://src.domain.com/images/1.jpg

    同样,http://domain.com/src/videos/v1.mp4http://src.domain.com/videos/v1.mp4

    但是,请注意,这只是一个临时解决方案! 为了最大限度地利用 CDN,您需要手动将图像指向您的 CDN,以便为每个图像保存一个 HTTP。

    【讨论】:

    • 我应该将它添加到 .htaccess 还是 httpd.conf 中?
    • 应该添加到 .htaccess 文件中
    • 创建一个.htaccess 文件并上传到您的网络目录(codeigniter 目录)的/
    • 尝试在末尾输入domain.com/src/ 添加/,因为在RewriteCond 中,/ 位于模式src 的末尾。
    猜你喜欢
    • 1970-01-01
    • 2016-11-12
    • 1970-01-01
    • 1970-01-01
    • 2019-06-18
    • 1970-01-01
    • 2014-08-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多