Laravel 7.x-如何删除';公共';从URL?
很长一段时间都在坚持这一点。我发现了类似的问题,但没有一个答案对我有用! 根文件夹中的.htaccess如下所示:Laravel 7.x-如何删除';公共';从URL?,laravel,routes,laravel-7,Laravel,Routes,Laravel 7,很长一段时间都在坚持这一点。我发现了类似的问题,但没有一个答案对我有用! 根文件夹中的.htaccess如下所示: RewriteEngine On RewriteCond %{REQUEST_URI} !^/public/ RewriteRule ^(.*)$ /public/$1 [L,QSA] 示例位于/public目录中。您还需要正确配置您的服务器,并让它只查看/public目录而不是根目录。根目录中不需要.htaccess文件 您将需要一个httpd-vhosts.conf,其中
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/public/
RewriteRule ^(.*)$ /public/$1 [L,QSA]
示例位于/public目录中。您还需要正确配置您的服务器,并让它只查看/public目录而不是根目录。根目录中不需要.htaccess文件
您将需要一个httpd-vhosts.conf,其中包含以下内容:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName yourapp.com
ServiceAlias www.yourapp.com
DocumentRoot /var/www/yourapp/public
</VirtualHost>
您可以阅读有关Laravel Web服务器配置的更多信息在根目录中创建名为“.htaccess”的文件并添加以下代码。就这样
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ ^$1 [N]
RewriteCond %{REQUEST_URI} (\.\w+$) [NC]
RewriteRule ^(.*)$ public/$1
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ server.php
为什么不使用默认的Laravel htaccess文件?@KarlHill我尝试了默认文件,但仍然无效!我也必须更改公用文件夹中的htaccess文件吗?
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ ^$1 [N]
RewriteCond %{REQUEST_URI} (\.\w+$) [NC]
RewriteRule ^(.*)$ public/$1
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ server.php