Apache 301针对特定url的重定向
我想将页面的URL(只有一个页面名为Apache 301针对特定url的重定向,apache,.htaccess,redirect,Apache,.htaccess,Redirect,我想将页面的URL(只有一个页面名为meto.php)编辑为自定义URL 重要的是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/(非根目录)中尝试了此代码: 不幸的是,上述所有尝
meto.php
)编辑为自定义URL
重要的是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/
(非根目录)中尝试了此代码:
不幸的是,上述所有尝试都失败了
服务器信息:
Apache 2.2版
PHP:5.5您不能使用mod_alias的Redirect Directiv重写文件,它用于外部重定向 试着改写一下
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]
您不能使用mod_alias的Redirect Directiv重写文件,它用于外部重定向 试着改写一下
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]
感谢您的回复。第二个代码让我看到这个错误“尝试打开的重定向太多”,第二个代码让我看到500个内部错误。我将此代码放在.htaccess的/pob/director中,您的htaccess中没有任何其他规则吗?是的,关于我的脚本,我将此代码放在
block@Paula代码在我的apache服务器上运行良好。我有2.2版的apache。我已经试过两次了。您在以前的代码中使用了301永久重定向,Web浏览器总是缓存301重定向以获得更好的性能,这可能是因为它不起作用。清除浏览器缓存。感谢您的回复。第二个代码告诉我此错误“尝试打开的重定向太多”,第二个代码告诉我500个内部错误。我将此代码放在.htaccess的/pob/director中,您的htaccess中没有任何其他规则吗?是的,关于我的脚本,我将此代码放在
block@Paula代码在我的apache服务器上运行良好。我有2.2版的apache。我已经试过两次了。您在以前的代码中使用了301永久重定向,Web浏览器总是缓存301重定向以获得更好的性能,这可能是因为它不起作用。清除浏览器缓存。