如何从Bolt中的URL中删除/ public和名称?

如何从Bolt中的URL中删除/ public和名称?

问题描述:

我正在一个小网站上工作,我有一个问题。 如何从url中删除/ public和单数名称?但是对于我想保留第一部分的条目。如何从Bolt中的URL中删除/ public和名称?

我该怎么做?因为当我尝试在htaccess中重写它时,资产中断(图像等)

+0

标题应非常具体,以确定个人的问题,而不仅仅是话题。我试图在这里适当地编辑它。 –

+0

嗨,我有同样的问题,我发现这个指南有几种方法来解决这个问题:https://docs.bolt.cm/3.4/howto/troubleshooting-outside-webroot – sunyata

使用.htaccess文件rewri忒你的URL:

<IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^(.*)$ public/page [L] </IfModule>

如果您正确安装了Apache虚拟主机,则url的公共部分应该不可见。

通常情况下,所有你需要做的,是DocumentRoot的设置指向公共目录,所以举例来说,如果您的设置目前看起来是这样的: DocumentRoot /home/mysite

你把它调整到: DocumentRoot /home/mysite/public

您也可能需要为配置中的任何<Directory /home/mysite >命令执行相同的操作。

修改完成后,重新启动Apache,http://yourdomain.com/应该加载主页并http://yourdomain.com/bolt带您到后端。

您需要将您的服务器指向/public目录。下面是官方文档说:

只有“公共”文件夹需要在浏览器中访问。第一次安装后,这个文件夹被命名为public /但是当你阅读时,你会看到你可以将它重命名为www /或者任何你的web服务器所需要的。为此,请将Web服务器配置为使用公共/文件夹作为Web根目录。有关这方面的更多信息,请参阅配置Apache或Nginx的页面。

来源:https://docs.bolt.cm/3.2/installation/install-command-line

Apache小号虚拟主机的指令是(在你的榜样domaincom.conf/etc/apache/sites-enabled

<VirtualHost *:80> 
    DocumentRoot /your-bolt-directory/public 
</VirtualHost> 

而对于Nginx

location/{ 
    root /your-bolt-directory/public; 
} 
+0

关于Nginx,必须声明root一次在“服务器”上,或者在因Bolt而存在的每个位置内。 [陷阱和常见错误| NGINX](https://www.nginx.com/resources/wiki/start/topics/tutorials/config_pitfalls/#root-inside-location-block) –