我有SEO友好的网址工作正常,但我已经改变了我的文件目录,需要调整一些东西,但我似乎无法让这个工作。
基本上我是通过htaccess
之后的事情$1.php?id=$2&subid=$3
以后可能会有更多疑问,任何想法?
我不喜欢列出每个页面,但宁愿动态地执行此操作。 htaccess适用于$ 1.php页面,但我无法弄清楚如何添加额外的$'
Options +FollowSymlinks
RewriteEngine On
RewriteBase /v2/
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,NC]
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^([^/]+)/?$ $1.php [L,NC]
https://steve-morris.co.uk/v2/services有效但https://steve-morris.co.uk/v2/property/to-rent没有
基本上是在
之后https://steve-morris.co.uk/v2/property/to-rent
链接到
https://steve-morris.co.uk/v2/property.php?id=to-rent
和
https://steve-morris.co.uk/v2/services/hello/this-is-a-service
转到
https://steve-morris.co.uk/v2/services.php?id=hello&subid=this-is-a-service
但是我觉得它很动态,因此我不必为每个页面写一次重写
答案 0 :(得分:1)
基本上你应该能够添加其他规则。
Options +FollowSymlinks
RewriteEngine On
RewriteBase /v2/
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,NC,L]
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/?$ $1.php?id=$2&subid=$3 [L,NC,QSA]
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^([^/]+)/([^/]+)/?$ $1.php?id=$2 [L,NC,QSA]
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^([^/]+)/?$ $1.php [L,NC,QSA]
让我知道这是怎么回事。
答案 1 :(得分:0)
最后一行应该是这样的:
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/?$ $1.php?id=$2&subid=$3 [L,NC]
RewriteRule ^([^/]+)/([^/]+)/?$ $1.php?id=$2 [L,NC]
RewriteRule ^([^/]+)/?$ $1.php [L,NC]