我已经找到了几个关于此问题的主题和问题,但似乎我要做的一切都没有做到它应该做的事情:
htaccess的文件
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteRule ^([A-Za-z0-9-]+)/?$ index.php?site=$1
正如你所知,没什么特别的。此示例取自此解决方案:SEO Friendly URL (with .htaccess)
从我的例子:
http://example.org/index.php?site=delivery
应该导致
http://example.org/Delivery # If it is possible, a capitalized Letter would be cool
我可以手动调用该站点,但不再包含引用(* .css文件)。此外,RewriteBase似乎不起作用。
我添加了一些有缺陷的代码来验证.htaccess文件是否已加载(并且已经加载)。
如果我使用<a href="index.php?site=mySite">
取消某些内容 - 该网址会自动更改为特定规则吗?是的,对吗?但可能缺少的是规则不适用?
提前谢谢
答案 0 :(得分:2)
你的规则没问题。由于重写,您必须以不同方式处理相对链接。
所以一旦规则到位。您需要将其添加到html的<head>
部分。
<base href="http://www.yoursite.com" />
然后在使用规则时加载JS和CSS。这不是.htaccess规则问题。
如果我对某事感兴趣 - 是吗? URL会自动更改为特定规则吗?
不,不。你也需要一个规则。
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond {THE_REQUEST} ^[A-Z]{3,}\ /+index\.php\?site=(.+)
RewriteRule ^ %1? [R=301,L]
RewriteRule ^([A-Za-z0-9-]+)/?$ index.php?site=$1