我有几个问题。
例如,在我的网站上,我有一个这样的链接:
localhost/ecom/index.php?页数=1&title=quem somos
索引文件检查id的GET['pages'],并基于db的信息分配两个变量:$static_id$static_title
如何将.htaccess配置为“转换”此链接:
本地主机/ecom/quem somos
当.htaccess被写入时,我的Href应该是这样的:
本地主机/ecom/quem somos
或者,应该是这样的:
localhost/ecom/index.php?页数=1&title=quem somos
而且这个网址被转换成搜索引擎优化友好的网址?
抱歉,如果这里有一些愚蠢的问题,我已经读了一些博客文章,但仍然无法理解。

最佳答案

把这个放到你的/ecom/dir

<IfModule mod_rewrite.c>
  RewriteEngine on
  RewriteBase /ecom/

  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_URI} !=/favicon.ico
  RewriteCond %{REQUEST_FILENAME} !\.(css|js|jpeg|jpg|gif|png|bmp)$
  RewriteRule ^([^\/]+)\/([^\/]+)\/?$ index.php?title=$1&pages=$2 [L,B,QSA]
</IfModule>

根据你的服务配置,可能不需要rewritebase,所以如果有删除的话。
或者把这个变量放到根目录中
<IfModule mod_rewrite.c>
  RewriteEngine on

  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_URI} !=/favicon.ico
  RewriteCond %{REQUEST_FILENAME} !\.(css|js|jpeg|jpg|gif|png|bmp)$
  RewriteRule ^ecom\/([^\/]+)\/([^\/]+)\/?$ /ecom/index.php?title=$1&pages=$2 [L,B,QSA]
</IfModule>

我更喜欢第一个。
你的网址必须是http://localhost/ecom/some-title/1/
注意/1/最后,它需要传递pages变量

08-25 20:37