将所有非 www 重定向到 www。对于 Cakephp 网站

发布于 2024-12-10 16:21:10 字数 966 浏览 0 评论 0原文

大家好,我在将非 www 页面重定向到 www 时遇到一些问题。我的 cakephp 网站的页面。

我已经尝试过

Options +FollowSymlinks
RewriteEngine on
rewritecond %{http_host} ^domain.com [nc]
rewriterule ^(.*)$ http://www.domain.com/$1 [r=301,nc]

,但似乎不起作用。

我的 cakephp 应用程序位于子文件夹中。例如。 www.domain.com/my

我已将上述代码添加到根文件夹,www.domain.com/

有什么建议吗?谢谢?

*更新

我的 .htaccess 文件,

<IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>

RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain\.com$ [NC]
RewriteRule ^.*$ http://www.domain.com%{REQUEST_URI} [R=301,L]

我在 URL 中插入了一个额外的 webroot/index.php?url= 。 ,我得到的是 www.domain.com/my/webroot/index.php?url=apple,而不是 www.domain.com/my/apple

感谢大家 再次。

Hi allm i'm having some issues in redirecting the non www pages to the www. pages for my cakephp site.

I've tried

Options +FollowSymlinks
RewriteEngine on
rewritecond %{http_host} ^domain.com [nc]
rewriterule ^(.*)$ http://www.domain.com/$1 [r=301,nc]

but it doesn't seem to work.

My cakephp app resides in a subfolder. eg. www.domain.com/my.

i've added the above code to the root folder, www.domain.com/

any suggestions? thanks?

*update

This my .htaccess file

<IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>

RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain\.com$ [NC]
RewriteRule ^.*$ http://www.domain.com%{REQUEST_URI} [R=301,L]

i'm getting an extra webroot/index.php?url= inserted into the url. Instead of www.domain.com/my/apple, i'm getting www.domain.com/my/webroot/index.php?url=apple

thanks to all once again.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

想念有你 2024-12-17 16:21:10

你的代码不太正确。见下文。

RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain\.com$ [NC]
RewriteRule ^.*$ http://www.domain.com%{REQUEST_URI} [R=301,L] # <-- Mind the 'L'!

RewriteRule ^$ webroot/    [L]
RewriteRule (.*) webroot/$1 [L]

Your code is not quite right. See below.

RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain\.com$ [NC]
RewriteRule ^.*$ http://www.domain.com%{REQUEST_URI} [R=301,L] # <-- Mind the 'L'!

RewriteRule ^$ webroot/    [L]
RewriteRule (.*) webroot/$1 [L]
岁月流歌 2024-12-17 16:21:10

如果域名是 .co.uk

<IfModule mod_rewrite.c> 
   RewriteEngine On
   RewriteCond %{HTTP_HOST} ^domain\.co\.uk$ [NC] 
   RewriteRule ^.*$ http://www.domain.co.uk%{REQUEST_URI} [R=301,L]

   RewriteRule ^$ app/webroot/    [L]
   RewriteRule (.*) app/webroot/$1 [L]
</IfModule>

if domain is .co.uk

<IfModule mod_rewrite.c> 
   RewriteEngine On
   RewriteCond %{HTTP_HOST} ^domain\.co\.uk$ [NC] 
   RewriteRule ^.*$ http://www.domain.co.uk%{REQUEST_URI} [R=301,L]

   RewriteRule ^$ app/webroot/    [L]
   RewriteRule (.*) app/webroot/$1 [L]
</IfModule>
忆梦 2024-12-17 16:21:10

重写引擎开启

RewriteCond %{HTTP_HOST} !^www\.domain\.com [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app/webroot/$1 [QSA,L]

RewriteEngine On

RewriteCond %{HTTP_HOST} !^www\.domain\.com [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app/webroot/$1 [QSA,L]

最舍不得你 2024-12-17 16:21:10

我已经尝试过下面的代码,它对我有用:

<IfModule mod_rewrite.c>
   RewriteEngine on
   RewriteCond %{HTTP_HOST} ^gigsadda\.com$ [NC]
   RewriteRule ^.*$ http://www.gigsadda.com%{REQUEST_URI} [R=301,L] 
   RewriteRule    ^$ app/webroot/    [L]
   RewriteRule    (.*) app/webroot/$1 [L]
</IfModule>

I have tried the below code below and it worked for me:

<IfModule mod_rewrite.c>
   RewriteEngine on
   RewriteCond %{HTTP_HOST} ^gigsadda\.com$ [NC]
   RewriteRule ^.*$ http://www.gigsadda.com%{REQUEST_URI} [R=301,L] 
   RewriteRule    ^$ app/webroot/    [L]
   RewriteRule    (.*) app/webroot/$1 [L]
</IfModule>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文