htaccess代码未正确重定向漂亮的网址-返回404

时间:2019-02-25 22:44:29

标签: .htaccess

我的最终目标是使用内容的标题作为漂亮的url来将所有url重定向到索引页面,以查询数据库并从那里进行解析。

所需的漂亮URL示例:

https://example.com/this is the title/https://example.com/this-is-the-title/

这是我正在使用的.htaccess代码:

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([a-zA-Z0-9]+)/?$ index.php?title=$1 [L,QSA]

RewriteCond %{HTTP_HOST} s8w\.org [NC]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.s8w.org/$1 [R,L]

查询上面期望的url示例时,上面的代码返回404错误。

但是...

https://example.com/this/-一个单词正确返回

我真的不确定从这里要去哪里...我假设我需要某种表达方式来允许多个单词,但不知道这是否是问题所在或是否存在.htaccess代码本身缺少的东西。任何帮助表示赞赏。

更新:问题已解决

我找到了答案...这是正确的代码:

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?title=$1 [QSA,L]

RewriteCond %{HTTP_HOST} s8w\.org [NC]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.s8w.org/$1 [R,L]

此行:

RewriteRule ^([a-zA-Z0-9]+)/?$ index.php?title=$1 [L,QSA]

需要为:

RewriteRule ^(.*)$ index.php?title=$1 [QSA,L]

感谢所有浏览过的人

0 个答案:

没有答案