在每个 html 或 php url 上显示 index.php,而不更改 url
前任。用户输入任何东西-everything.html(.php) 将显示 index.php 而不更改 url,
条件 - 主机上不存在任何东西。
像 404 重定向而不更改 url
欢迎来到 SO。如果您在 Apache 网络服务器上运行您的网站,您可以使用Apache 模块 mod_rewrite来实现此目的。这是一个.htaccess
文件示例,您必须将其放在网站的根目录中。
# switch on mod_rewrite
RewriteEngine On
# redirect all non-www request to www
RewriteCond %{HTTP_HOST} !^$
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
# rewrite all physical files and folders
RewriteCond %{REQUEST_FILENAME} !-f [OR]
RewriteCond %{REQUEST_FILENAME} !-d
# add all exceptions that should not be redirected
RewriteCond %{REQUEST_URI} "/layout/" [OR]
RewriteCond %{REQUEST_URI} "/javascript/" [OR]
RewriteCond %{REQUEST_URI} "/content"
# and finally pass everything to the index.php as a parameter
RewriteRule .* - [L]
RewriteRule (.*) index.php?value=$1 [QSA]
这将执行以下操作:
$_GET['value']
然后hello/world.html
可以进一步处理使用 apache 重写(如果您使用 apache 并且可以访问服务器)。来自 Apache 的配方重写 index.php 的所有路径应该没问题。