如何写htaccess seo友好的网址

时间:2017-03-05 21:26:05

标签: .htaccess

我需要一些URL重写规则。我谷歌有些并申请但没有更改网址。

我想:

http://example.com/tender/details/NIdyzuC41kgt91vRSHHOOFdaPtuMuGL8ePwE0Zx1aEj9vFQecoSRTVRyebazIMxNrUhrJFhK0rJuXpzZ

更改为:

http://demo.example.com/name-of-topic

这是.htaccess文件

php_flag display_errors on
php_value error_reporting 9999

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l

RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]

1 个答案:

答案 0 :(得分:0)

由于您已经在使用前置控制器,看起来您应该在应用程序/ CMS中更改此URL,而不是在.htaccess中更改

为简单起见,我假设主域example.com和子域demo.example.com都指向文件系统上的相同位置。 (如果他们指向完全不同的文件系统,那么您需要代理请求,因为您不能简单地跨主机重写。)

假设您已将应用程序中链接到的网址更改为http://demo.example.com/name-of-topic,那么您可以在 RewriteBase之后立即添加以下内容指令。

RewriteCond %{HTTP_HOST} ^demo\.example\.com\.?$ [NC]
RewriteRule ^name-of-topic$ /tender/details/NIdyzuC41kgt91vRSHHOOFdaPtuMuGL8ePwE0Zx1aEj9vFQecoSRTVRyebazIMxNrUhrJFhK0rJuXpzZ [L]

在内部将 http://demo.example.com/name-of-topic重写为/tender/details/NIdyzuC41...("真实"网址)。