微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

插入第二个域规则 htaccess

如何解决插入第二个域规则 htaccess

我购买了第二个域并将其添加到我的主机中,如何配置 htaccess 文件以将第二个域的页面重定向到其自己的文件夹? 这是我目前的文件,第一个域在公共文件夹中:

RewriteEngine on
RewriteRule ^sitemap/sitemap-surveys.xml$   sitemap/sitemap-surveys.PHP
RewriteRule ^sitemap/sitemap-users.xml$   sitemap/sitemap-users.PHP
RewriteRule ^sitemap/sitemap-flashpinions.xml$   sitemap/sitemap-flashpinions.PHP
RedirectMatch ^/$ /accounts/index
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/about/index.html$
RewriteRule ^.*$ /public/index.PHP [NC,L,QSA]

第二个域位于 site2 文件夹内

解决方法

根据您显示的示例,您能否尝试以下操作。考虑到任何包含新域的 url 都应由 site2/public/index.php 文件重写,请确保您的 htaccess 应位于 htaccess、site2 文件夹和 site1 文件夹所在的同一文件夹中。

RewriteEngine on

RewriteCond %{HTTP_HOST} ^(site2)\.com$ [NC]
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^ %1/public/index.php [L]

RewriteRule ^sitemap/sitemap-surveys.xml$   sitemap/sitemap-surveys.php
RewriteRule ^sitemap/sitemap-users.xml$   sitemap/sitemap-users.php
RewriteRule ^sitemap/sitemap-flashpinions.xml$   sitemap/sitemap-flashpinions.php

RewriteCond %{HTTP_HOST} !^(site2)\.com$ [NC]
RewriteRule ^/?$ /accounts/index [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/about/index.html$
RewriteRule ^.*$ /public/index.php [NC,L,QSA]

我对上面的测试是如何进行的(我在这里使用的是本地主机,您可以在这里使用您的域名),我的文件夹位置是什么样的。

/var/www/html/.htaccess
/var/www/html/site2/
/var/www/html/site2/public/index.php

测试结果:

curl -IL "http://localhost:80/test/blabla"
HTTP/1.1 200 OK

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。