我正在尝试创建.htaccess:
将所有非WWW网址重定向到WWW
将一些特定的slug重定向到特定页面
重定向所有其他slug(在“spicel”中没有到page.php?id =)
我用的是什么:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{HTTP_HOST} !^www\.example\.co\.il
RewriteRule (.*) http://www.example.co.il/$1 [R=301,L]
ErrorDocument 404 /404.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^צרו-קשר$ /contact.php [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/?([^/]+)$ /page.php?id=$1 [L]
url example.co.il not redirect wo www.example.co.il。我在做什么?
答案 0 :(得分:1)
当代码不是现有的文件/文件夹时,您的代码才会将non-www
重定向到www
。
只需删除这两个条件。
变成
ErrorDocument 404 /404.php
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
RewriteRule ^צרו-קשר$ /contact.php [L]
# here: other specific pages
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/?([^/]+)$ /page.php?id=$1 [L]