我有子域apps.domain.com指向domain.com/apps
我想要重写appName.apps.domain.com,其中appName是指向domain.com/apps/appName的变量
在我的.htaccess文件中应该有哪些内容,我应该在哪里保存它?在/apps/文件夹中?还是在root文件夹中?
最后,如果无法使用.htaccess文件,我如何才能做到这一点?我使用Linux服务器作为主机。
*问题更新于2018年07/08/2018年;添加了更多细节*
public_html/domain.com/,其中/domain.com/是托管域名的名称。示例:
domain.comawesomeawesome.apps.domain.com将指向.public_html/domain.com/apps/awesome/ubertz.apps.domain.com将指向.public_html/domain.com/apps/ubertz/发布于 2015-07-08 09:53:01
我使用这个代码进行子域转发:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(.*)\.apps\.domain\.com$
RewriteRule (.*) /apps/%1/$1解释:
RewriteCond中,使用正则表达式(.*)捕获应用程序名-它将保存到变量%1中。RewriteRule中,您将所有内容(这是另一个将保存在变量$1中的内容的(.*)表达式)转发到/apps/<appName>/<path after URL>目录有关正则表达式的更多信息,我建议查看本教程:http://www.webforgers.net/mod-rewrite/mod-rewrite-syntax.php
您应该将.htaccess保存在域的root目录中,在public_html/domain.com/中保存。如果它不能工作,将其放在apps文件夹中。
发布于 2015-07-08 12:19:19
尝试以下.htaccess指令:
RewriteEngine on
RewriteCond %{REQUEST_URI} ^(.*)\.apps\.domain\.com$
RewriteRule (.*) /apps/appName/$1 [P,L]由于P标志,RewriteRule不会重定向用户。这将将请求重定向到mod_proxy模块,该模块处理请求并返回结果。
有关详细信息,请参阅proxy.html。
https://stackoverflow.com/questions/31186078
复制相似问题