【问题标题】:htaccess configuration for subdomain子域的 htaccess 配置
【发布时间】:2014-12-12 01:19:45
【问题描述】:

我应该如何重新配置​​我当前的 htaccess 以适用于我的子域?它适用于我的本地设置,但不适用于我将文件上传到子域时。我可以通过http://localhost/~myUsername/mySiteFolder/ 在本地访问我的网站,并且我想将我的文件上传到我的子域,这样我就可以像这样访问它http://api.myOnlineSite.com/mySiteFolder

我的 Mac OS 本地服务器上的当前 htaccess:

RewriteEngine On
RewriteBase /~myUsername/mySiteFolder/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [QSA,L]

我尝试将 RewriteBase 更改为 api.myOnlineSite.com/mySiteFolder/,但它不起作用并显示 The requested URL /mySiteFolder/index.php was not found on this server.

【问题讨论】:

    标签: php .htaccess subdomain


    【解决方案1】:

    您可以在子域上使用此 .htaccess:

    RewriteEngine On
    RewriteBase /mySiteFolder/
    
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^ index.php [L]
    

    RewriteBase 包含来自DocumentRoot 的相对路径,没有域名。

    【讨论】:

    • 谢谢。它确实奏效了。但是,我的子域中有这个文件夹,我仍然无法访问,但可以在本地主机上工作。该目录是/mySiteFolder/CMS/index.php,它没有任何自己的htaccess。 mySiteFolder 上的 htaccess 会影响它吗?
    • 没有子目录 .htaccess 总是覆盖父目录 .htaccess。
    • 那么你的意思是我应该把 .htaccess 文件放在 CMS 文件夹中并关闭 RewriteEngine 吗?
    • 你甚至不需要cms文件夹中的.htaccess
    猜你喜欢
    • 2018-06-05
    • 1970-01-01
    • 2017-01-23
    • 2013-09-16
    • 2016-05-11
    • 2012-07-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-16
    相关资源
    最近更新 更多