【问题标题】:htaccess dynamic subdomains but redirect main domain to https-wwwhtaccess 动态子域,但将主域重定向到 https-www
【发布时间】:2020-11-30 18:40:15
【问题描述】:

我正在使用 opencart 电子商务包,并让我的主域重定向到使用 https 和 www,但我需要一些子域,到目前为止,在我的 .htaccess 中我有

RewriteBase /
RewriteCond %{HTTP_HOST} ^mydomain.co.uk
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^(.*)\.mydomain\.co.uk$ 
RewriteCond %1 !^(www|ftp|mail)$ [NC]
RewriteCond %{REQUEST_URI} !^/subdomains/(.*)
RewriteRule ^(.*)$ /subdomains/%1/$1 [L]

这很好用,我可以在名为 subdomains 的文件夹中创建新的子域 - 但如果找不到文件夹,它会显示 500 错误,我已尝试添加对文件夹和文件的检查,但这仍然返回 500 错误和错误-

请求已超过 10 个内部重定向的限制

RewriteCond %{HTTP_HOST} ^(.*)\.mydomain\.co.uk$ 
RewriteCond %1 !^(www|ftp|mail)$ [NC]
RewriteCond %{REQUEST_URI} !^/subdomains/(.*)
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.*)$ /subdomains/%1/$1 [L]

如果文件夹和文件在那里,我可以使用什么只显示子域,否则将请求重定向回主域?

【问题讨论】:

  • 感谢您在问题中分享您的努力,继续努力。您能否添加一些您想要的网址示例,以重定向/重写并让我们知道以便更好地理解。
  • @RavinderSingh13 我现在已经设法让它显示 301 页面而不是重定向 - 但我之后的所有内容都是动态子域,如果我在我的子域目录中创建一个文件夹,我希望它检查查看该文件夹是否存在,然后显示内容,但如果该文件夹不存在,我希望它重定向到主域,

标签: .htaccess opencart


【解决方案1】:

所以我设法停止了 500 错误并显示 301 永久移动页面而不是重定向 - 出于某种原因,如果目录不存在,我无法弄清楚如何重定向回主域

## redirect the main domain to www-https
RewriteBase /
RewriteCond %{HTTP_HOST} ^mydomain.co.uk
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

## check the subdomain folder
RewriteCond %{HTTP_HOST} ^(.*)\.mydomain\.co.uk$ 
RewriteCond %1 !^(www|ftp|mail)$ [NC]
RewriteCond %{REQUEST_URI} !^/subdomains/(.*)
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -s
RewriteRule ^(.*)$ /subdomains/%1/$1 [L] 

## show the index.php file in the subdomain directory
## doesn't work but shows a 301 page ?
RewriteCond %{HTTP_HOST} ^(.*)\.mydomain\.co.uk$
RewriteCond %{REQUEST_FILENAME} !-f [OR]
RewriteCond %{REQUEST_FILENAME} !-s
RewriteRule ^(.*) /subdomains/index.php [R=301]

【讨论】:

    猜你喜欢
    • 2018-06-02
    • 2017-04-22
    • 1970-01-01
    • 2018-06-01
    • 2015-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-21
    相关资源
    最近更新 更多