我从Stackoverflow-Using wildcard subdomain on specific directory
获取源代码原始代码:
RewriteEngine on RewriteBase / RewriteCond %{HTTP_HOST} ^(?!www\.)([^.]+)\.domain\.com$ [NC] RewriteCond %{REQUEST_URI}::%1 !^/([^/]+).*?::\1 RewriteRule ^(.*)$ /%1/$1 [L]
它正常工作,但上面的代码是从root指向目录。我希望所有子域指向我的"投资组合中的目录"目录,所以我尝试修改自己的代码
修改后(添加" / portfolio"):
RewriteEngine on RewriteBase / RewriteCond %{HTTP_HOST} ^(?!www\.)([^.]+)\.mlaxproject\.com$ [NC] RewriteCond %{REQUEST_URI}::%1 !^/([^/]+).*?::\1 RewriteRule ^(.*)$ /portfolio/%1/$1 [L]
但它给了我" 500 -Internal Server Error" ......为什么?任何人都可以更正我的代码吗?
感谢和抱歉我的英语。
答案 0 :(得分:1)
您还需要将/portfolio
添加到RewriteCond
。
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} ^(?!www\.)([^.]+)\.mlaxproject\.com$ [NC]
RewriteCond %{REQUEST_URI}::%1 !^/portfolio/([^/]+).*?::\1
RewriteRule ^(.*)$ /portfolio/%1/$1 [L]