如何将别名中的所有内容从http:// hostname /重写为http:// hostname / alias /?

时间:2014-03-11 14:56:21

标签: apache rewrite mod-alias frapi

我在apache别名下的Intranet上的Windows服务器上安装了FRAPI框架。

# Frontend
Alias /api "D:/var/www/api_dev/public" 

# Backend
Alias /api_admin "D:/var/www/api_dev/admin/public" 

admin部分的.htaccess文件如下所示:

SetEnv APPLICATION_ENV development

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

问题是所有操作,脚本和CSS都不会被重写。

所有这些都指向http://hostname/action而不是http://hostname/api_admin/action

脚本和CSS指向http://hostname/css/style.css,依此类推。

我添加了RewriteBase

RewriteBase /api_admin

但我没有运气。

如何将别名中的所有内容从http://hostname/重写为http://hostname/api_admin/

1 个答案:

答案 0 :(得分:0)

我放弃并在VirtualHost下安装了FRAPI。

<VirtualHost *:666>
    ServerName hostname
    DocumentRoot D:/var/www/frapi/public
    ...
</VirtualHost>

<VirtualHost *:777>
    ServerName hostname
    DocumentRoot D:/var/www/frapi/admin/public
    ...
</VirtualHost>