我必须遗漏一些明显的东西,因为这似乎不应该是一个难题。我希望通过我的index.php处理我网站上的所有网址路径(http://example.com
,http://example.com/admin
,http://example.com/happy/happy/joy/joy
等)。我以前见过这个,但是我不知道怎么做。
答案 0 :(得分:2)
只需在根目录中创建一个.htaccess
文件:
# Turn on URL rewriting
RewriteEngine On
# Base directory
RewriteBase /
# Protect hidden files from being viewed
<Files .*>
Order Deny,Allow
Deny From All
</Files>
# Allow any files or directories that exist to be displayed directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Rewrite all other URLs to index.php/URL
RewriteRule .* index.php/$0 [PT]
Apache标志解释:
[L]
- “Last”的别名,指示服务器重写规则已经结束,是时候执行内部重定向而不更改浏览器的uri。
[PT]
- “Pass Through”的别名,允许将Mod_Rewrite操作的uri传递给下一种类型的处理程序,相应于php.ini模块的包含顺序。根据主题有用。