Mas*_*erT 3 php .htaccess mod-rewrite url-rewriting
我正在努力使我的网站更加SEO友好我正在使用
RewriteEngine On
RewriteRule (.*)$ index.php?page=$1
Run Code Online (Sandbox Code Playgroud)
要打开site.co.uk/index.php?page=page_name成site.co.uk/page_name
我也想将它用于子页面.我试过这个:
RewriteEngine On
RewriteRule (.*)/(.*)$ index.php?page=$1&subpage=$2
Run Code Online (Sandbox Code Playgroud)
但它不起作用,它运行site.co.uk/page_name/sub_page但是当你去site.co.uk/page_name它时返回404未找到.
我希望它运行site.co.uk/page_name并返回page_name
要么
site.co.uk/page_name/sub_page 并返回 sub_page
等等
site.co.uk/page_name/sub_page/sub_page2/...
仅使用:
RewriteEngine On
Options -Indexes
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?page=$1 [L,QSA]
Run Code Online (Sandbox Code Playgroud)
没问题,然后您可以在脚本中路由请求.
您使用explode()分隔符/拆分页面变量,然后设置变量.
$route = explode('/',$_GET['page']);
$page = isset($route[0]) ? $route[0] : null;
$subpage = isset($route[1]) ? $route[1] : null;
$yada = isset($route[2]) ? $route[2] : null;
Run Code Online (Sandbox Code Playgroud)
许多MVC框架使用此方法.它叫做路由.
| 归档时间: |
|
| 查看次数: |
2916 次 |
| 最近记录: |