-1

我正在尝试对我的 .htaccess 文件进行一些重写

我要做的就是重写网址:
www.example.com/book.php?course=#WHATEVERSLUG

www.example.com/course/#WHATEVERSLUG

我已经成功使用下面的代码一段时间了,没有错误

RewriteEngine On

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^course\/([^/\.]+)/?$ book.php?course=$1 [L]

然后,我尝试在下面添加另一个重写模块:

RewriteRule ^(.*)\/(\?.*)?$ $1$2 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*) $1.php [L]

通过删除 .php 扩展名来缩短我的网址,并删除斜杠,但由于某种原因,它们似乎不能很好地混合。我对.Htaccess 不是很好,所以任何帮助都是积极的。

或者,如果有人有另一个重写建议:


www.example.com/book.php?course=#WHATEVERSLUG

www.example.com/course/#WHATEVERSLUG

重写 .php 文件以删除扩展名和斜杠。

将不胜感激。先感谢您。

4

1 回答 1

0

弄清楚了!:

有一点帮助: Multiple conflicting htaccess RewriteRules

Options +FollowSymLinks
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^(.*)$ $1.php

RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f

RewriteRule ^course\/([^/\.]+)/?$ ./book.php?course=$1
于 2013-07-01T02:31:47.140 回答