从URL

时间:2017-05-18 14:10:32

标签: apache .htaccess redirect

我已经按照this教程了解了如何从URL中删除文件扩展名。问题是,我还需要重定向一些名称已更改的页面。

我当前的.htaccess文件如下所示:



Options +MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]
RewriteRule ^([^\.]+)$ $1.html [NC,L]

RewriteRule ^old\-page\-name$ /new-page-name




问题是,重定向不起作用。它在添加尾随.php时有效,在这种情况下,它会向地址添加一个端口(7080),因此它看起来像domain.com:7080/new-address.php

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

您无法将相同的名称重定向到php和html。您可以使用以下测试:

Nginx

首先放置你最常用的那个(php或html) 您还可以在php中更改所有签名(如果php非常常用)

重定向到端口7080似乎与此htaccess无关

Options -MultiViews RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME}.php -f RewriteRule ^ %{REQUEST_URI}.php [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME}.html -f RewriteRule ^ %{REQUEST_URI}.html [L] RewriteRule ^old\-page\-name$ /new-page-name 尝试做同样的事情。你不能同时使用它们。