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

How can I remove /public and the name from URLs in Bolt?

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

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

如果您正确设置了 Apache 虚拟主机,url 的 public 部分应该不可见。

通常,您在这里需要做的就是将 DocumentRoot 设置指向 public 目录,例如,如果您当前的设置如下所示: DocumentRoot /home/mysite

你调整为: DocumentRoot /home/mysite/public

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

修改完成后,重启Apache,http://yourdomain.com/ should load up the homepage and http://yourdomain.com/bolt进入后台

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

Only the 'public' folder needs to be accessible in the browser. After the first installation this folder is named public/ but as you read on, you will see that you can rename it to www/ or whatever your web server requires. To do this, configure your webserver to use the public/ folder as the web root. For more information about this, see the pages on configuring Apache or Nginx.

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

Apaches VirtualHost 的指令是(在您的示例中 domaincom.conf in /etc/apache/sites-enabled:

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

对于Nginx

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

使用 .htaccess 文件重写您 URL 的:

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