<p>I've seen it mentioned in many blogs around the net, but I believe it shoud be discussed here.
What can we do when we have an MVC framework (I am interested in ZEND) in PHP but our host does not provide mod_rewrite?
Are there any "short-cuts"? Can we transfer control in any way (so that a mapping may occur between pages)? Any ideas?
Thank you :-)</p>

[{'answer_id': 13739, 'author': 'Eric Goodwin', 'author_id': 1430, 'author_profile': 'https://Stackoverflow.com/users/1430', 'pm_score': 0, 'selected': False, 'text': "<p>mod_rewrite is almost essential in today's hosting environment..but unfortunately not everyone got the message.</p>\n\n<p>Lots of the large php programs (I'm thinking magento, but most can cope) have a pretty-url fall back mode for when mod_rewrite isn't available.</p>\n\n<p>URLs end up looking like www.site.com/index.php?load-this-page</p>\n\n<p>They must be running some magic to grab the variable name from the $_GET variable and using it as the selector for what module/feature to execute.</p>\n\n<p>In a related note, I've seen lots of messed up URLs in the new facebook site where it's using the #.  So links look like www.new.facebook.com/home.php#/inbox/  Clearly we're not meant to see that but it suggests that they're probably parsing the $_SERVER['REQUEST_URI'] variable.</p>\n"}, {'answer_id': 13777, 'author': 'Theo', 'author_id': 1109, 'author_profile': 'https://Stackoverflow.com/users/1109', 'pm_score': 3, 'selected': True, 'text': '<p>Zend framework should work without <code>mod_rewrite</code>. If you can live with your URL:s looking more like "/path/to/app/index.php/controller/action". If you had mod_rewrite you could do away with the "index.php" bit, but it should work with too.</p>\n\n<p>It\'s all a matter of setting up the routes to accept the index.php part.</p>\n'}, {'answer_id': 13784, 'author': 'Brian Warshaw', 'author_id': 1344, 'author_profile': 'https://Stackoverflow.com/users/1344', 'pm_score': 0, 'selected': False, 'text': "<p>If you can find a non-mod_rewrite way to redirect all requests to index.php (or wherever your init script is), you can, as mentioned above, use 'REQUEST_URI' to grab the portion of the address after the domain and then parse it as you like and make the request do what you want it to. This is how Wordpress does it (granted, with mod_rewrite). As long as you can redirect requests to your index page while retaining the same URI, you can do what you need to to process the request.</p>\n"}, {'answer_id': 36934, 'author': 'Dimitrios Mistriotis', 'author_id': 1622, 'author_profile': 'https://Stackoverflow.com/users/1622', 'pm_score': 1, 'selected': False, 'text': "<p>OK my verdict :-): I have used successfully zend without mod_rewrite and it's as you've all said site/index.php/controller/action. I knew that before posting this. I've also found out around the net a technique that &quot;pushes&quot; 404 pages to index.php therefore what is not a resource (eg. CSS, image, etc) get there, with one exception: POST values.\nSo I decided that the next time an application has to be made in the specific server, to ask politely for mod_rewrite. If the administrator can not provide it, talk with my boss or if it is for me, switch provider.\nGenerally, it is a shame sometimes that the PHP market is so much fragmented (php4, php5, php6, mod_rewrite, mod_auth, mod_whatever), but this is another story...</p>\n"}, {'answer_id': 267174, 'author': 'Community', 'author_id': -1, 'author_profile': 'https://Stackoverflow.com/users/-1', 'pm_score': -1, 'selected': False, 'text': '<p>Drupal\'s rewrite rules translate</p>\n\n<p><a href="http://example.com/path/goes/here" rel="nofollow noreferrer">http://example.com/path/goes/here</a></p>\n\n<p>into</p>\n\n<p><a href="http://example.com/index.php?q=path/goes/here" rel="nofollow noreferrer">http://example.com/index.php?q=path/goes/here</a></p>\n\n<p>...and has logic to decide which flavor of URLs to generate.  If you can live with ugly URLs, this would let you keep all the logic of a single front controller in place w/o relying on URL rewriting.</p>\n'}]
['https://Stackoverflow.com/questions/13698', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/1622/']