【问题标题】:how can i separate the mainDomain and the subDomains use mod-rewrite with htaccess file我如何分离主域和子域使用 mod-rewrite 和 htaccess 文件
【发布时间】:2018-10-12 13:04:51
【问题描述】:

如果我的网站上的子域被查询,我想重定向它们,但如果我不查询,我想将它重定向到不同的域。 我通过搜索互联网找到了一些代码,但我没有改进。 如果我不能告诉我我想做什么,我希望下面的 url 和文件结构与我显示的一样。

public_html/
|____.htaccess (main htaccess)
|____index.php (php empty)
|____mainDomain/
|     |_____.htaccess (without subdomain htaccess)
|     |_____index.php
|     |_____public/
|     |      |____.htaccess (application htaccess)
|     |      |____index.php
|____subsDomain/
|     |_____ucgen/
|     |_____testFolder/

主 htaccess:

RewriteCond %{ENV:REDIRECT_SUBDOMAIN} =""
RewriteCond %{HTTP_HOST} ^([a-z0-9][-a-z0-9]+)\.metehanboy\.com\.?(:80)?$ [NC]
RewriteCond %{DOCUMENT_ROOT}/subsDomain/%1 -d
RewriteRule ^(.*) subsDomain/%1/$1 [E=SUBDOMAIN:%1,L]
RewriteRule ^ - [E=SUBDOMAIN:%{ENV:REDIRECT_SUBDOMAIN},L]

RewriteRule    ^$    mainDomain/    [L]
RewriteRule    (.*) mainDomain/$1    [QSA,L]

没有子域 htaccess

RewriteEngine on
    RewriteRule    ^$    public/    [QSA,L]
    RewriteRule    (.*)  public/$1    [QSA,L]

应用程序 htaccess

重写引擎开启

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

RewriteRule ^(.*)$ index.php?hedef=$1 [PT,L]

我添加了 cpanelden 子域,但是当我运行子域时发生了无限循环,我该如何解决这个问题?

示例子域链接:http://ucgen.metehanboy.com/example/example 其他链接:http://metehanboy.com/authentication/index

mainDomain 文件夹包括 mvc php 应用程序
subsDomain 文件夹包含测试应用程序脚本

Apache 错误日志

[Wed May 02 14:16:26.044185 2018] [core:alert] [pid 3117] [client 95.70.153.106:59513] /home/metehanboy/public_html/.htaccess: Invalid command 'RewriteLog', perhaps misspelled or defined by a module not included in the server configuration
[Wed May 02 14:16:26.043954 2018] [core:alert] [pid 3117] [client 95.70.153.106:59513] /home/metehanboy/public_html/.htaccess: Invalid command 'RewriteLog', perhaps misspelled or defined by a module not included in the server configuration
[Wed May 02 14:15:42.256845 2018] [core:alert] [pid 2690] [client 95.70.153.106:59497] /home/metehanboy/public_html/.htaccess: Invalid command 'RewriteLogLevel', perhaps misspelled or defined by a module not included in the server configuration
[Wed May 02 14:15:42.256734 2018] [core:alert] [pid 2690] [client 95.70.153.106:59497] /home/metehanboy/public_html/.htaccess: Invalid command 'RewriteLogLevel', perhaps misspelled or defined by a module not included in the server configuration
[Wed May 02 14:15:34.964648 2018] [core:alert] [pid 2641] [client 95.70.153.106:59496] /home/metehanboy/public_html/.htaccess: Invalid command 'RewriteLogLevel', perhaps misspelled or defined by a module not included in the server configuration
[Wed May 02 14:15:34.964434 2018] [core:alert] [pid 2641] [client 95.70.153.106:59496] /home/metehanboy/public_html/.htaccess: Invalid command 'RewriteLogLevel', perhaps misspelled or defined by a module not included in the server configuration
[Wed May 02 14:15:21.351847 2018] [core:alert] [pid 2696] [client 95.70.153.106:59491] /home/metehanboy/public_html/.htaccess: Invalid command 'RewriteLogLevel', perhaps misspelled or defined by a module not included in the server configuration
[Wed May 02 14:15:21.351768 2018] [core:alert] [pid 2696] [client 95.70.153.106:59491] /home/metehanboy/public_html/.htaccess: Invalid command 'RewriteLogLevel', perhaps misspelled or defined by a module not included in the server configuration
[Wed May 02 14:13:47.582923 2018] [core:error] [pid 3117] [client 95.70.153.106:59459] AH00124: Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace., referer: http://ucgen.metehanboy.com/
[Wed May 02 14:13:47.582877 2018] [core:error] [pid 3117] [client 95.70.153.106:59459] AH00124: Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace., referer: http://ucgen.metehanboy.com/
[Wed May 02 14:13:46.839964 2018] [core:error] [pid 3118] [client 95.70.153.106:59457] AH00124: Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace., referer: http://ucgen.metehanboy.com/
[Wed May 02 14:13:46.839899 2018] [core:error] [pid 3118] [client 95.70.153.106:59457] AH00124: Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace., referer: http://ucgen.metehanboy.com/
[Wed May 02 14:13:39.737762 2018] [core:error] [pid 2696] [client 95.70.153.106:59446] AH00124: Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace., referer: http://ucgen.metehanboy.com/
[Wed May 02 14:13:39.737686 2018] [core:error] [pid 2696] [client 95.70.153.106:59446] AH00124: Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace., referer: http://ucgen.metehanboy.com/

【问题讨论】:

    标签: .htaccess mod-rewrite subdomain infinite-loop


    【解决方案1】:

    在 cPanel 中,您可以将子域相邻添加到您的主域,而不是子目录。为什么需要那种过于复杂的结构?有什么好处?使用这样的东西,让自己免于头痛:

    public_html/
     |____.htaccess (application htaccess)
     |____index.php
    public_html_ucgen/
     |____.htaccess (subdomain htaccess)
     |____index.php
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-28
      • 2013-05-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多