2015-10-27 134 views
1

我有这样的htaccess代码htaccess的重写链接和重复它

Options +FollowSymLinks 
RewriteEngine On 
RewriteBase/

RewriteCond %{HTTP_HOST} ^einfogarden.com$ 
RewriteRule (.*) http://www.einfogarden.com/$1 [R=301,L] 

RewriteCond %{THE_REQUEST} \s/+single\.php\?title=([^\s&]+) [NC] 
RewriteRule^%1/? [R=302,L,NE] 

## Adding a trailing slash 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{THE_REQUEST} \s/+(.*?)[^/][?\s] 
RewriteRule [^/]$ %{REQUEST_URI}/ [L,R=302] 

# convert %20 to - 
RewriteRule "^(\S*) +(\S* .*)$" $1-$2 [L,NE] 
RewriteRule "^(\S*) (\S*)$" $1-$2 [L,R=302,NE] 

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

应该从URL中移除的single.php?标题=和斜线代替20%,并corrctly工作。 但我有2个问题1.它停止的CSS在我的网站2.如果您尝试点击任何链接(除)的主页,它会给你这样的事情http://www.einfogarden.com/%D9%81%D9%88%D8%A7%D8%A6%D8%AF-%D8%A7%D9%84%D8%AC%D8%B1%D8%AC%D9%8A%D8%B1/single.php?title=%D9%81%D9%88%D8%A7%D8%A6%D8%AF%20%D8%A7%D9%84%D8%B1%D9%85%D8%A7%D9%86%20%D8%A7%D9%84%D8%B1%D8%A7%D8%A6%D8%B9%D8%A9 它复制链接

+0

我解决了css问题 –

+0

不要在你的url结尾添加'/'。 yourweb.com/home而不是yourweb.com/home/ –

回答

0

你问在.htaccess中的当前页面的网址。 So yourwebsite.com/home将是yourwebsite.com/home/home 我修改了一下你的代码。使用这将做得很好。

RewriteCond %{REQUEST_FILENAME} -f [NC,OR] 
RewriteCond %{REQUEST_FILENAME} -d [NC] 
RewriteRule ^(.*?)$ $1 [L] 
RewriteCond %{REQUEST_URI} !^/cache 
RewriteCond %{REQUEST_URI} !^/images 
RewriteCond %{REQUEST_URI} !.*\.(css|jpg|gif|zip|js) 

RewriteRule ^(.*)/(.*)/?$ index.php?page1=$1&page2=$2 [L] 
RewriteRule ^(.*) index.php?page1=$1 [L] 
#RewriteRule ^(.*)/?$ http://www.google.com/ [R] 

这是一个简单的方法使用搜索引擎优化的URL 的RewriteRule是创建一个新的变种,以您的网址。