Php 使用htaccess映射页面
我有一个php页面,我正试图用htaccess来映射它。其思想是映射页面,如果没有参数,则页面为1。这是用于分页的 我的php页面:Php 使用htaccess映射页面,php,.htaccess,Php,.htaccess,我有一个php页面,我正试图用htaccess来映射它。其思想是映射页面,如果没有参数,则页面为1。这是用于分页的 我的php页面: <?php echo $page = isset($_GET['p']) ? $_GET['p'] : 1; ?> 如果我尝试使用localhost/example/noticias.php和localhost/example/noticias.php?p=2访问页面,一切正常。 如果添加第一条规则,则第二条规则不起作用。如果我删除第一条规则,url
<?php echo $page = isset($_GET['p']) ? $_GET['p'] : 1; ?>
如果我尝试使用localhost/example/noticias.php
和localhost/example/noticias.php?p=2
访问页面,一切正常。
如果添加第一条规则,则第二条规则不起作用。如果我删除第一条规则,url将无法工作
Tks。请在您的
.htaccess
文件中尝试此操作
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteRule ^noticias/?$ noticias.php [QSA,NC,L]
RewriteRule ^noticias/([1-9]+)/?$ noticias.php?p=$1 [QSA,NC,L]
</IfModule>
重新启动发动机
重写基/
重写规则^NOTIIAS/?$NOTIIAS.php[QSA,NC,L]
重写规则^NOTIIAS/([1-9]+)/?$NOTIIAS.php?p=$1[QSA,NC,L]
您可以在禁用多视图的情况下使用这些规则:
Options -MultiViews
RewriteEngine on
RewriteRule ^(noticias)/?$ $1.php [NC,L]
RewriteRule ^(noticias)/(\d+)/?$ $1.php?p=$2 [QSA,NC,L]
RewriteCond
指令似乎是多余的,只会增加开销。@white先生,谢谢您对这一点的介绍
Options -MultiViews
RewriteEngine on
RewriteRule ^(noticias)/?$ $1.php [NC,L]
RewriteRule ^(noticias)/(\d+)/?$ $1.php?p=$2 [QSA,NC,L]