我正在尝试在 Opencart 2.3 中在 lockalhost(使用 Docker)上启用 seo_url,但是 url 给我 404 错误。 .htaccess 重命名,清除缓存。
它如何在 docker 上运行?
谢谢!
最佳答案
首先 - 从您的版本 OpenCart 包中获取默认的 .htaccess.txt 文件。如果您对 .htaccess 进行了一些更改 - 最好采用原始文件。在其他情况下 - 跳过此步骤。
您必须将 .htaccess.txt 重命名为 .htaccess。在 Windows 上不是那么明显。用记事本打开它,然后另存为文件,将其重命名为.htaccess而不是
.txt
。希望,你已经做到了,但对于所有阅读本文的人来说——确保你已经做到了。如果您正在为 OpenCart 站点使用内部文件夹,并且地址类似于 http://localhost/inner_folder/ - 您在 .htaccess 中的重写基础应该是 RewriteBase/inner_folder/。如果 OC 文件夹是域根 - 重写基础是 RewriteBase/
尽管如此,请确保您使用的是带有 modrewrite 的 Apache 网络服务器。转到 php 错误日志 - 也许您会在那里找到一些信息。
确保使用 SEO URL 在系统>设置>您的商店>服务器中是。
每个类别、产品、制造商都有 SEO URL 字段。您应该填写每个的 SEO URL 字段以确保 SEO URL 正常工作。在 SEO URL 中,您应该只使用拉丁符号、数字、减号 (-) 和下划线 (_)。没有空格或其他特殊字符。
已更新
如果 apache 没有看到 .htaccess 文件 - 你应该转到 apache .conf 文件(Docker 的/httpd/httpd.conf)并在 VirtualHost block 之后添加
<Directory /var/www/html/your_folder/>
Options Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
目录 - 是来自 Docker 根目录的路径。重新启动 Apache 。应该可以。
关于docker - SEO URL 在带有 Docker 的 OpenCart 2.3 中给出 404 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61816609/