[英]Laravel reroute subfolder .htaccess
我需要将Laravel项目部署到域子文件夹。 我已经将文件放在正确的位置,即,与public_html
文件夹处于同一级别的项目文件夹,并且已经将public文件夹的内容复制到public_html
(嗯,我创建了一个symlink
来说明事实)。
我只有一个问题:
如果转到my-domain.com/proj-name
,则可以看到主页,而没有任何问题。
但是,当我进入项目页面my-domain.com/proj-name/about
(例如)时,我得到404 Not Found: The requested URL /proj-name/about was not found on this server.
我认为解决方案是在.htaccess上编辑RewriteRule,以便当我浏览到my-domain.com/proj-name/about
,它会删除proj-name
就像试图访问my-domain.com/about
。
我怎样才能做到这一点?
这是我当前的.htaccess :
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</IfModule>
您应该执行以下操作:
RewriteCond %{REQUEST_URI} !^/proj-name/
RewriteRule ^(.*)$ proj-name/$1 [L]
注:以上应该在.htaccess
位于public_html
,而不是在public_html/proj_name
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.