不同的url指向不同的目录
Different urls point to different directories
如果我选择 http://example.com
那么它指向 /var/www/html
现在我需要如果我选择 http://example.com/dashboard
那么它会指向 /var/www/example/public
。或者如果这不可能,那么 /var/www/html/example/public
也可以。
我再次需要,如果我选择 http://wildcardsubdomain.example.com/
,那么它也会指向 /var/www/example/public
。或者如果这不可能,那么 /var/www/html/example/public
也可以。
我该怎么做?
我试过这个但是 /dashboard
不工作:
ServerName example.com
# Listen for virtual host requests on all IP addresses
UseCanonicalName Off
#dynamic subdomain provisioning
<VirtualHost *:80>
ServerName www.example.com
ServerAlias example.com
DocumentRoot /var/www/html
</VirtualHost>
<VirtualHost *:80>
#WORKING
ServerName user.example.com
ServerAlias *.example.com
DocumentRoot /var/www/example/public
</VirtualHost>
<VirtualHost *:80>
#NOT WORKING
ServerName www.example.com/dashboard
ServerAlias *.example.com/dashboard
DocumentRoot /var/www/example/public
</VirtualHost>
<Directory /var/www/html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
对于 dashboard
我可以使用 Alias Directive
解决这个问题
<VirtualHost *:80>
DocumentRoot /var/www/html
Alias /dashboard /var/www/example/public
<Directory /var/www/example/public>
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
如果我选择 http://example.com
那么它指向 /var/www/html
现在我需要如果我选择 http://example.com/dashboard
那么它会指向 /var/www/example/public
。或者如果这不可能,那么 /var/www/html/example/public
也可以。
我再次需要,如果我选择 http://wildcardsubdomain.example.com/
,那么它也会指向 /var/www/example/public
。或者如果这不可能,那么 /var/www/html/example/public
也可以。
我该怎么做?
我试过这个但是 /dashboard
不工作:
ServerName example.com
# Listen for virtual host requests on all IP addresses
UseCanonicalName Off
#dynamic subdomain provisioning
<VirtualHost *:80>
ServerName www.example.com
ServerAlias example.com
DocumentRoot /var/www/html
</VirtualHost>
<VirtualHost *:80>
#WORKING
ServerName user.example.com
ServerAlias *.example.com
DocumentRoot /var/www/example/public
</VirtualHost>
<VirtualHost *:80>
#NOT WORKING
ServerName www.example.com/dashboard
ServerAlias *.example.com/dashboard
DocumentRoot /var/www/example/public
</VirtualHost>
<Directory /var/www/html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
对于 dashboard
我可以使用 Alias Directive
<VirtualHost *:80>
DocumentRoot /var/www/html
Alias /dashboard /var/www/example/public
<Directory /var/www/example/public>
Order allow,deny
Allow from all
</Directory>
</VirtualHost>