我有一个网站,它使用htaccess将所有页面重写到索引页面,然后使用哈希值来提供内容。该文件看起来像这样....
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^?]*)$ /index.php?urlpath=$1 [NC,L,QSA]
我现在正在移动网站的某些页面,但是如果我添加了重定向,例如....
Redirect 301 /blog /new_location/blog/
我遇到问题,结果网址看起来像
https://mydomain/new_location/blog/urlpath=blog.php
任何人都可以建议我将页面重定向到mydomain / new_location / blog /,然后在新网址上运行重写。
非常感谢
答案 0 :(得分:0)
RewriteRule
和Redirect
来自不同的Apache模块,因此在处理过程中的不同时间运行,而不是按照它们在配置中出现的顺序运行。通过使用[R]
标记到RewriteRule
,您最好坚持使用一个模块或另一个模块。
RewriteRule /blog(.*) /new_location/blog$1 [R=301]
答案 1 :(得分:0)
好的,我设法使用Redirect和Rewrite这样的组合工作......
def smaller_then_ten(e):
return e[0] < len(e)
def foo(los, n=None):
n = n or len(los)
h = it.takewhile(smaller_then_n, enumerate(los))
s = sorted(h)
g = it.groupby(s)
return dict(it.starmap(lambda k, vs: (k, sum(map(lambda i: 1, vs))), g))
alist=[1,2,3,1,1,7,8,9,9]
print(foo(alist))
也许不是最好的解决方案,但它有效!