我想将网页的网址(只有一个名为meto.php
的网页)修改为自定义网址。
位于子目录meto.php
中的/pob/
文件非常重要
我想将此www.domain/pob/meto.php
更改为www.domain/pob/define.php
当访问者输入此地址www.domain/pob/meto.php
地址栏时,会显示以下地址:www.domain/pob/define.php
请注意define.php
文件不存在。
我在.htaccess
/pob/
(非根目录)的Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^domain.com[nc]
RewriteRule ^(.*)$ http://www.domain.com/pob/$1 [r=301,nc]
Redirect 301 meto.php define.php
//also
Redirect 301 /meto.php http://www.domain.com/pob/define.php
//
RewriteRule ^meto.php define.php
文件中尝试了此代码:
<svg width="400" height="400" viewBox="0 0 400 400"
xmlns="http://www.w3.org/2000/svg">
<g id="r1" transform="translate(20,100) rotate(30, 175, 85)">
<rect width="350" height="170" fill="#69c" fill-opacity=".1" />
</g>
<g id="r2" transform="">
<rect width="150" height="100" fill="green" fill-opacity=".1" />
</g>
<g id="r3" transform="">
<rect width="150" height="100" fill="red" fill-opacity=".1" />
</g>
</svg>
不幸的是,上述所有尝试都失败了。
服务器信息:
Apache 2.2版
PHP:5.5
答案 0 :(得分:0)
您不能使用mod_alias的Redirect Directiv重写文件,它用于外部重定向。
尝试mod_rewrite
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^domain.com$ [NC]
RewriteRule ^(.*)$ http://www.domain.com/pob/$1 [R=301,L]
#1) redirect "/pob/meto.php to "/pob/define.php"
RewriteCond %{THE_REQUEST} /meto.php [NC]
RewriteRule ^ /define.php [NC,L,R]
#2) rewrite "pob/define.php" to "/pob/meto.php"
RewriteRule ^define\.php$ /pob/meto.php [NC,L]