Первый груз помощник URL в конструкторе, если вы еще не сделали это уже:
$this->load->helper('url');
тогда, когда вам нужно перенаправлять вы можете просто позвонить:
$s3_url = "https://mywebapp.s3.amazonaws.com/products/image1.jpg";
// you can omit the last two parameters for the default redirect
redirect($s3_url, 'location', 301);
Я думаю, что вы хотите услуга, в которой вы получаете доступ к URL-адресу и получаете изображение, вот мое решение
<?php if (!defined('BASEPATH')) die();
class Img extends CI_Controller {
public function __construct()
{
parent::__construct();
$this->load->helper('url');
// this is the db model where you store the image's urls
$this->load->model('images_model', 'img_m');
}
// accessed as example.com/img/<image_id>
// redirects to the appropiate s3 URL
public function index()
{
// get the second segment (returns false if not set)
$image_id = $this->uri->segment(2);
// if there was no image in the url set:
if ($image_id === false)
{
// load an image index view
$this->load->view('image_index_v');
exit;
}
$url = $this->img_m->get_url($image_id);
// get_url() should return something like this:
$url = "https://mywebapp.s3.amazonaws.com/products/image1.jpg";
// then you simply call:
redirect($url, 'location', 301);
}
}
Почему бы просто не использовать ссылку S3 напрямую когда вам это нужно? Мы, по крайней мере, должны знать, чего именно вы хотите достичь. – xiankai
Я знаю, что он не нужен, но я просто подумал, что этот вид перенаправления URL будет казаться более профессиональным, а также я хочу, чтобы все мои URL-адреса имели одинаковое происхождение для лучшего внешнего вида. –
Тогда вы хотите не перенаправление URL, это маскирование домена. http://en.wikipedia.org/wiki/Domain_Masking – xiankai