我即将部署一个 Laravel 项目。我上传了所有文件,网站工作正常,但唯一的问题是当我尝试访问我的网站时,例如,如果我尝试在网址中写入 mywebsitename.com
,则会显示公共(public)目录,其中是因为我已将 laravel 的 public 文件夹符号链接(symbolic link)到 public_html 文件夹。我不知道如何编辑 .htaccess
文件以便使用 mywebsitename.com 而不是 mywebsitename.com/public
加载网站。我的 htacess 文件代码是
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews -Indexes
</IfModule>
RewriteEngine On
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
我的文件目录结构显示在this image中
请帮助我
最佳答案
我猜它是一个 apache 服务器。如果是;
- 确保您的域名
mywebsitename.com
指向public_html
- 在根目录 (
public_html
) 中添加 .htaccess 文件并将其粘贴到
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
关于laravel - 如何从根文件夹内的子文件夹访问网站?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59277843/