Routing URLs in PHP

前端 未结 3 1416
孤独总比滥情好
孤独总比滥情好 2020-12-03 18:52

I\'m working on a web page project. I decided to use Apache, PHP (5.1.7, version imposed by my service provider) and Dwoo (templating) for this purpose.

I want to ro

相关标签:
3条回答
  • 2020-12-03 19:12

    Like trolskn (+1) describes:

    Use mod_rewrite to route everything to a single index.php file. Then check the variable in $_SERVER['REQUEST_URI'] within this file to dispatch to the required handler.

    But I found the following .htaccess (placed in the folder with the index.php which should "consume" everything after it) much more helpful:

    Options -MultiViews
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [QSA,L]
    

    Also I would like to note that you might encounter the message

    .htaccess: Invalid command 'RewriteEngine', perhaps misspelled
    or defined by a module not included in the server configuration
    

    This can easily be solved with sudo a2enmod rewrite && sudo service apache2 restart (source)

    0 讨论(0)
  • 2020-12-03 19:14

    You might want to use PEAR's Net_URL_Mapper.

    0 讨论(0)
  • 2020-12-03 19:17

    Use mod_rewrite to route everything to a single index.php file. Then check the variable in $_SERVER['REQUEST_URI'] within this file to dispatch to the required handler.

    This configuration will enable mod_rewrite, if it's installed:

    DirectorySlash Off
    Options FollowSymLinks Indexes
    DirectoryIndex index.php
    
    RewriteEngine on
    
    RewriteCond %{REQUEST_FILENAME}  -d
    RewriteRule  ^.*$  -  [L]
    
    RewriteCond %{REQUEST_FILENAME}  -f
    RewriteRule  ^.*$  -  [L]
    
    RewriteRule ^.*$    index.php [L]
    
    0 讨论(0)
提交回复
热议问题