【发布时间】:2015-09-06 22:20:44
【问题描述】:
我目前正在将大量子域网站移动为子目录网站。例如site1.website.com => website.com/site1。所有这些站点都在同一目录中使用相同的代码。该代码将读取站点名称并加载正确的数据库(如果存在)。所以我对所有网站都有以下别名格式。
Alias /site1 /var/www/laravel/public
无需过多解释,laravel 是一个 MVC 框架,index.php 是我唯一需要路由流量的文件。正因为如此,所有的 URLS 都需要以 index.php 作为前缀,但这真的很难看,我似乎无法摆脱它。
当网站是子域时,我尝试了以下方法,但现在不起作用。当我使用此代码 website.com/site1/login 将重定向到 website.com/login。
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
所有网站都是动态的,所以我不想为每个网站硬编码规则。有什么办法可以处理吗?
【问题讨论】:
-
你能try this 吗?
-
这种工作。 url 没有重定向到主网站,但它仍然给出 404 错误。在此服务器上找不到请求的 URL /site1/login。
-
你有普通的
routes.php或者在里面处理一些动态的东西? -
只是普通的 routes.php。我唯一动态的是数据库连接。当它是一个子域时,其他一切都很好
-
您的
root或home文件夹中有.htaccess吗?
标签: php .htaccess laravel mod-rewrite