我在默认的var/www/html
路径上运行了一个Apache Web服务器。
如下所示:
var (Folder)
| www (Folder)
| | html (Folder)
| | | index.php (File)
| | | some_other_files.php (File)
| | | ab (Folder)
| | | | index.php
| | my_app (Folder)
| | | ab.php (file)
| | | login (Folder)
| | | | index.php
| | | index.php (File)
现在,我要将所有流量从domain.com/my_app
及其子文件夹重定向到实际的var/www/my_app
目录。
不应该仅将var/www/html/index.php
文件重定向到var/www/my_app/index.php
,而且来自html
子文件夹的所有流量都应发送到以下位置的文件夹中my_app
。
示例:
domain.com/my_app/ => var/www/my_app/index.php
domain.com/ => var/www/html/index.php
domain.com/abc => var/www/html/abc/index.php
domain.com/my_app/login/ => var/www/my_app/login/index.php
domain.com/my_app/ab.php => var/www/my_app/ab.php
请注意,这应该将请求转发/重新写入文件夹,而不仅仅是重新定向它们!
如何通过实现适当的.htaccess
或编辑apache conf
文件来实现这一目标?
提前谢谢!
答案 0 :(得分:1)
我终于找到了解决方法:
<VirtualHost *:80>
DocumentRoot /var/www/html/
Alias /my_app "/var/www/my_app/"
Alias /my_app/ "/var/www/my_app/"
<Directory "/var/www/my_app/">
Order allow,deny
Allow from all
AllowOverride All
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
这样,到domain.com/my_app
的所有HTTP流量都被发送到/var/www/my_app/
及其子文件夹!