Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/249.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在index.php中重写_Php_.htaccess_Mod Rewrite_Url Rewriting_Rewrite - Fatal编程技术网

在index.php中重写

在index.php中重写,php,.htaccess,mod-rewrite,url-rewriting,rewrite,Php,.htaccess,Mod Rewrite,Url Rewriting,Rewrite,我在我的网站中重写HREF时遇到问题。首先,我设法从na URL中删除了所有的.php扩展,然后我将重写所有mydomain.com/img?id=X添加到mydomain.com/img/X中,但我已经为另一件事挣扎了一段时间,我希望能得到任何帮助。我的网站由许多页面组成,第X页的链接是mydomain.com/?page=X(例如mydomain/?page=3),但我想将该URL重写为mydomain.com/page/X 这是我的.htaccess: RewriteEngine on R

我在我的网站中重写HREF时遇到问题。首先,我设法从na URL中删除了所有的.php扩展,然后我将重写所有mydomain.com/img?id=X添加到mydomain.com/img/X中,但我已经为另一件事挣扎了一段时间,我希望能得到任何帮助。我的网站由许多页面组成,第X页的链接是mydomain.com/?page=X(例如mydomain/?page=3),但我想将该URL重写为mydomain.com/page/X

这是我的.htaccess:

RewriteEngine on
RewriteBase /
<something not important>

RewriteCond %{HTTP_HOST}//s%{HTTPS} ^www\.(.*)//((s)on|s.*)$ [NC]
RewriteRule ^ http%3://%1%{REQUEST_URI} [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^img/([0-9]+)/?$ img.php?id=$1

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
重新编写引擎打开
重写基/
重写cond%{HTTP_HOST}//s%{HTTPS}^www\.(.*)/((s)on | s.*)$[NC]
重写规则^http%3://%1%{REQUEST_URI}[L,R=301]
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_FILENAME}\.php-f
重写规则^img/([0-9]+)/?$img.php?id=$1
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_FILENAME}\.php-f
重写规则^(.*)$$1.php
此规则正下方:

RewriteCond %{HTTP_HOST}//s%{HTTPS} ^www\.(.*)//((s)on|s.*)$ [NC]
RewriteRule ^ http%3://%1%{REQUEST_URI} [L,R=301]
尝试添加:

RewriteCond %{THE_REQUEST} \ /+\?page=([0-9]+)
RewriteRule ^ /page/%1? [L,R]

RewriteRule ^page/([0-9]+)/?$ /?page=$1 [L]

它不能正常工作。当我点击一个按钮访问第2页时,它会很好地重定向,URL是ok-mydomain.com/page/2。有两个问题:当我返回到第1页时,我得到以下URL:mydomain.com/page/2?page=1。第二个问题(不太重要):当我将光标移到第2页的链接上时,会显示旧的URL(带有?page=2)有什么想法吗?或者你知道这种情况occurs@user2593393这些都与htaccess文件中的规则无关。您需要更改内容,以便以
/page/2
的形式使用绝对URL和URL。重写规则无法更改页面内容。好的,我就是这么做的。在'a href'中,我用一个特定的数字键入了我的页面的绝对路径,一切正常。谢谢