php - .htaccess 用于共享主机上的多个 laravel 安装
问题描述
我在一个共享主机帐户中有多个 laravel 项目。域 1 拥有根文件夹,其中包含链接到 Laravel project1 的 index.php 文件和一个 .htaccess 文件。
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
RewriteRule ^([a-z0-9-_]+)\ ([^/]+)/(.*)/? /$1$2/$3/ [L]
域 2 指向一个名为 project2 的子文件夹,它是 project1 的克隆,它读取另一个 mysql 数据库。
可悲的是,当使用 domain2 时,任何子域都会返回内部服务器错误。据我所知,问题与 .htaccess 文件有关,该文件强制 url 由 project1 而不是 project2 的 index.php 处理。
我能做些什么来避免上述行为?
解决方案
工作解决方案:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.domain1.com$ [OR]
RewriteCond %{HTTP_HOST} ^domain2.com$
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
RewriteCond %{HTTP_HOST} ^www.domain2.com$ [OR]
RewriteCond %{HTTP_HOST} ^domain2.com$
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ project2/index.php [L]
RewriteRule ^([a-z0-9-_]+)\ ([^/]+)/(.*)/? /$1$2/$3/ [L]
推荐阅读
- java - 在运行时使用通用类型参数自动装配 Bean
- ios - SwiftUI @Binding 属性不更新嵌套视图 - Xcode 12
- java - 在 RecyclerView 中拖放后如何在 SQlite 中保存新位置
- google-cloud-platform - 如何通过 SSH 连接到 GCP 上的 kubernetes/GKE 集群中的节点
- kubernetes - 由于缺少配置,运行 kubectl patch --local 失败
- python - 如何为熊猫多索引中每个零级组的第一行赋值
- unix - 使用大于数字的列值过滤文件(awk 不起作用)
- excel - 如何使用 VBA 根据该单元格的内容在 Excel 中定位一个单元格,然后将该单元格(偏移)移动到右侧的一个单元格?
- python-3.x - ValueError:支持的目标类型是:('binary','multiclass')。取而代之的是“连续”。Python
- vue.js - 在 Vue 项目的 Cordova 应用程序中找不到图像