diff options
Diffstat (limited to 'user_guide_src/source/general/urls.rst')
-rw-r--r-- | user_guide_src/source/general/urls.rst | 100 |
1 files changed, 0 insertions, 100 deletions
diff --git a/user_guide_src/source/general/urls.rst b/user_guide_src/source/general/urls.rst deleted file mode 100644 index b8a1b9f5b..000000000 --- a/user_guide_src/source/general/urls.rst +++ /dev/null @@ -1,100 +0,0 @@ -################ -CodeIgniter URLs -################ - -By default, URLs in CodeIgniter are designed to be search-engine and -human friendly. Rather than using the standard "query string" approach -to URLs that is synonymous with dynamic systems, CodeIgniter uses a -**segment-based** approach:: - - example.com/news/article/my_article - -.. note:: Query string URLs can be optionally enabled, as described - below. - -URI Segments -============ - -The segments in the URL, in following with the Model-View-Controller -approach, usually represent:: - - example.com/class/function/ID - -#. The first segment represents the controller **class** that should be - invoked. -#. The second segment represents the class **function**, or method, that - should be called. -#. The third, and any additional segments, represent the ID and any - variables that will be passed to the controller. - -The :doc:`URI Library <../libraries/uri>` and the :doc:`URL Helper -<../helpers/url_helper>` contain functions that make it easy to work -with your URI data. In addition, your URLs can be remapped using the -:doc:`URI Routing <routing>` feature for more flexibility. - -Removing the index.php file -=========================== - -By default, the **index.php** file will be included in your URLs:: - - example.com/index.php/news/article/my_article - -If your Apache server has *mod_rewrite* enabled, you can easily remove this -file by using a .htaccess file with some simple rules. Here is an example -of such a file, using the "negative" method in which everything is redirected -except the specified items: - -.. code-block:: apache - - RewriteEngine On - RewriteCond %{REQUEST_FILENAME} !-f - RewriteCond %{REQUEST_FILENAME} !-d - RewriteRule ^(.*)$ index.php/$1 [L] - -In the above example, any HTTP request other than those for existing -directories and existing files is treated as a request for your index.php file. - -.. note:: These specific rules might not work for all server configurations. - -.. note:: Make sure to also exclude from the above rule any assets that you - might need to be accessible from the outside world. - -Adding a URL Suffix -=================== - -In your **config/config.php** file you can specify a suffix that will be -added to all URLs generated by CodeIgniter. For example, if a URL is -this:: - - example.com/index.php/products/view/shoes - -You can optionally add a suffix, like **.html,** making the page appear to -be of a certain type:: - - example.com/index.php/products/view/shoes.html - -Enabling Query Strings -====================== - -In some cases you might prefer to use query strings URLs:: - - index.php?c=products&m=view&id=345 - -CodeIgniter optionally supports this capability, which can be enabled in -your **application/config.php** file. If you open your config file you'll -see these items:: - - $config['enable_query_strings'] = FALSE; - $config['controller_trigger'] = 'c'; - $config['function_trigger'] = 'm'; - -If you change "enable_query_strings" to TRUE this feature will become -active. Your controllers and functions will then be accessible using the -"trigger" words you've set to invoke your controllers and methods:: - - index.php?c=controller&m=method - -.. note:: If you are using query strings you will have to build your own - URLs, rather than utilizing the URL helpers (and other helpers - that generate URLs, like some of the form helpers) as these are - designed to work with segment based URLs.
\ No newline at end of file |