Çizgi (/) firar veya benim adresler End?

3 Cevap php

Hey guys, en uygun olduğunu anlamaya çalışıyorum. Ben okudum makalelerden, bir eğik çizgi ile URL sonuna kadar iyi görünüyor.

So instead of: http://www.site.com/article

It would read: http://www.site.com/article/

Öncelikle ben bir bölü zorlamak için benim htaccess ayarlandı.

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI}      ^.+[^/]$
RewriteRule ^(.+)$              $1/   

Sonra benim bağlantılarda bu uygulamaya başladı ve ben çapa yaptım eğer ('haber /', 'yazı') işe düşündüm, ama bu işlev bölü şeritler görünüyor.

Bu almak için ben $ config ['url_suffix'] = '/' için config dosyasını değiştirdi. Ben pdf yıllardan ve bu benim sitede bir belge alanı dışında .. ÇOĞUNLUKLA cezası .. çalıştı. Yani bağlantılar http://www.site.com/documents/doc1.pdf/ gibi dışarı açacak orada yarattı. Bu tabii ki çalışmaz.

Benim çözüm burada ne düşünüyorsunuz? Ben geri ben belgeleri veya dosyaları başvurulan herhangi bir sayfaya gidin ve çapa işlevini kullanmak için bunları ayarlamak olabilir sanırım, ama daha kolay bir yolu olması gerektiğini hissediyorum.

Teşekkürler!

3 Cevap

Benim siteleri de kullanıyoruz. Bölü çizgisi kullanıcılar için özel bir şey gösterir, bence. Beri "/" genellikle bir klasörünü gösterir, kullanıcılar (özellikle teknik) alt klasörler veya bu sayfanın alt-parametreler vardır demek için bu almak. Çizgi bir kullanıcıyı gösteren hiçbir alt klasörler olduğunu gösterebilir. Bu örneğin pdf dosyası gibi dosyaları gibi şeyler için çalışır.

Bu nedenle, ben her iki tarafı da zorlamak için, ancak kullanıcıların algılarını yansıtan bir şekilde benim site kurmak için değil seçtiniz. Ama şu felsefe şey, doğru değil, kodu, kullanıcılar için bir site kurmak? :-)

Maalesef belki kaba-ish olmak, ancak çalışması (ya da sorunlara neden olur) değilse, sadece bunu ve iyiyiz yok. Bu tür bir şey için ekstra kod ekleyerek boşa zaman. Bazı tarayıcılar otomatik çizgi ekleyin, neden endişe? Bu gerçekten önemli değil.

Override site_url() Config.php bir dosyaya bağlantı zaman dışında bir eğik çizgi eklemek için gelen:

application/core/MY_Config.php:

<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class MY_Config extends CI_Config {

    function site_url($uri = '')
    {   
        if ($uri == '')
        {
            return $this->slash_item('base_url').$this->item('index_page');
        }

        if ($this->item('enable_query_strings') == FALSE)
        {
            $suffix = '';
            if( ! preg_match('/(.+)\.[a-zA-Z0-9]{2,4}$/', $uri))
            {
                $suffix = '/';              
            }
            return $this->slash_item('base_url').$this->slash_item('index_page').$this->_uri_string($uri).$suffix;              
        }
        else
        {
            return $this->slash_item('base_url').$this->item('index_page').'?'.$this->_uri_string($uri);
        }
    }

}
// END MY_Config Class

/* End of file MY_Config.php */
/* Location: ./application/core/MY_Config.php */