用于SEO友好网址的htaccess

时间:2015-11-02 09:53:21

标签: .htaccess

所以有两天我无法理解为什么这不会起作用......:

  Options -Indexes 
  Options +FollowSymLinks
  RewriteEngine On
  RewriteRule ^advice/([a-zA-Z]+)/([0-9]+)/$ advice.php?advice=$1&id=$2

显然.htaccess是允许的,因为我无法打开目录打开文件夹,但为什么链接不起作用?

2 个答案:

答案 0 :(得分:0)

尝试关闭multiviews,以便服务器不会尝试将其作为文件进行搜索。另外添加条件,以便它知道它不是在寻找它正在尝试提供的真实文件或目录,并使尾随斜杠可选。

  Options -Indexes +FollowSymLinks -MultiViews
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^advice/([a-zA-Z]+)/([0-9]+)/?$ /advice.php?advice=$1&id=$2 [L]

答案 1 :(得分:0)

您的RewriteRule是否重定向到现有文件? 试试这个,它对我有用

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . /test2/test.php
  • http://example.com/test2/.htaccess显示.htaccess文件的位置
  • http://example.com/test2/test.php是直接链接
  • http://example.com/test2/testX4XX使用重写
  • 打开相同的test.php文件