thinkphp 设置运行目录为/public后 404错误

news/2024/12/23 5:04:28/文章来源:https://www.cnblogs.com/hwrex/p/18448254

当你在 ThinkPHP 中设置了运行目录为 /public 后,可能会遇到 404 错误。这通常是因为 Web 服务器的配置问题导致的。以下是解决这个问题的几个步骤:

1. 修改 .htaccess 文件

如果你使用的是 Apache 服务器,需要确保 .htaccess 文件正确配置。在项目根目录下创建或修改 .htaccess 文件,内容如下:

<IfModule mod_rewrite.c>RewriteEngine OnRewriteBase /public/# 如果请求资源不存在,则交给 index.php 处理RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule ^(.*)$ ./index.php/$1 [L]
</IfModule>

2. 修改 Nginx 配置文件

如果你使用的是 Nginx 服务器,需要修改 Nginx 的配置文件。在 nginx.conf 或者站点配置文件中添加或修改以下内容:

server {listen 80;server_name yourdomain.com;root /path/to/your/project/public;  # 指定项目的 public 目录location / {try_files $uri $uri/ /index.php?$args;}location ~ \.php$ {include snippets/fastcgi-php.conf;fastcgi_pass unix:/run/php/php7.4-fpm.sock;  # 根据实际 PHP 版本和配置修改}
}

3. 修改 ThinkPHP 配置

确保 ThinkPHP 的配置文件中指定了正确的运行目录。在 config.php 文件中添加或修改以下内容:

return [// 运行目录'app_dir' => 'public',// 应用基础路径'base_path' => __DIR__ . '/../',// 应用入口文件'entry_file' => 'index.php',
];

4. 重启 Web 服务器

  • Apache:重启 Apache 服务。

    sh
     
    sudo service apache2 restart
  • Nginx:重启 Nginx 服务。

    sh
     
    sudo service nginx restart

5. 测试访问

  • 在浏览器中访问你的网站,确保所有配置生效并且没有 404 错误。

总结

通过以上步骤,你可以解决 ThinkPHP 设置运行目录为 /public 后出现的 404 错误。确保 Web 服务器的配置正确,并且 ThinkPHP 的配置文件也进行了相应的修改。这样可以确保应用能够正常运行。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/809795.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站证书错误打不开网页怎么办

遇到网站证书错误导致网页无法打开的情况,可以尝试以下几个步骤来解决:清除浏览器缓存和Cookies清除浏览器中的缓存数据和Cookies可能会帮助解决问题。更换浏览器尝试使用不同的浏览器访问该网站,有时候问题可能是浏览器特定的。检查日期和时间设置确保您的设备日期和时间设…

网站怎么修改里面资料

修改网站内部资料的具体步骤取决于您的网站类型和技术栈。以下是针对不同类型的网站的详细步骤: 1. 使用CMS系统(如WordPress、Drupal等) 修改文字登录后台:登录到CMS后台管理系统(例如WordPress的/wp-admin)。编辑页面或文章:导航到“页面”或“文章”部分,找到需要修…

开源的键鼠共享工具「GitHub 热点速览」

十一长假回来,我的手放在落灰的键盘上都有些陌生了,红轴竟敲出了青轴般的响声,仿佛在诉说对假期结束的不甘。 假期回归的首更,让我们看看又有什么好玩的开源项目冲上了开源热榜。一套键盘和鼠标控制多台电脑的工具 deskflow,现在已全面开源、支持多平台,对于开发者更加友…

雅礼国庆集训 day1 T3 画作

题面 题目下载 算法 猜测最优解是 每一次染色都是之前染色的子集且颜色相反(证明不会) 所以可以逆向思维(注意直接逆向不成立) 最后一次染色一定在一个四连通块中, 之前的染色一定是后一次染色的超集 把每个颜色的连通块缩点, 例如每次将一个点(即原图中的连通块)染色成反色, 相…

Windows Server 2025 RTM 中文版、英文版下载 (released Sep 2024)

Windows Server 2025 RTM 中文版、英文版下载 (released Sep 2024)Windows Server 2025 RTM 中文版、英文版下载 (released Sep 2024) Windows Server 2025 LTSC RTM 已发布 请访问原文链接:https://sysin.org/blog/windows-server-2025/ 查看最新版。原创作品,转载请保留出处…

VMware ESXi 8.0U3 集成 AQC 网卡定制版更新 OEM BIOS 2.7 支持 Windows Server 2025

VMware ESXi 8.0U3 集成 AQC 网卡定制版更新 OEM BIOS 2.7 支持 Windows Server 2025VMware ESXi 8.0U3 集成 AQC 网卡定制版更新 OEM BIOS 2.7 支持 Windows Server 2025 VMware ESXi 8.0U3 macOS Unlocker & OEM BIOS 集成网卡驱动和 NVMe 驱动 (集成驱动版) 发布 ESXi 8…

VMware Aria Automation 8.18 发布,新增功能概览

VMware Aria Automation 8.18 发布,新增功能概览VMware Aria Automation 8.18 - 多云基础架构自动化平台 Multi-Cloud Infrastructure Automation Platform 请访问原文链接:https://sysin.org/blog/vmware-aria-automation/,查看最新版。原创作品,转载请保留出处。 作者主页…

VMware Aria Automation Orchestrator 8.18 发布,新增功能概览

VMware Aria Automation Orchestrator 8.18 发布,新增功能概览VMware Aria Automation Orchestrator 8.18 - 现代工作流程自动化平台 请访问原文链接:https://sysin.org/blog/vmware-aria-automation-orchestrator/,查看最新版。原创作品,转载请保留出处。 作者主页:sysin…

C#/.NET/.NET Core技术前沿周刊 | 第 8 期(2024年10.01-10.06)

前言 C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录、追踪C#/.NET/.NET Core领域、生态的每周最新、最实用、最有价值的技术文章、社区动态、优质项目和学习资源等。让你时刻站在技术前沿,助力技术成长与视野拓宽。欢迎投稿,推荐或自荐优质文章/项目/学习资源等。…

从SQL Server过渡到PostgreSQL:理解模式的差异

从SQL Server过渡到PostgreSQL:理解模式的差异 前言 随着越来越多的企业转向开源技术,商业数据库管理员和开发者也逐渐面临向PostgreSQL迁移的需求。 虽然SQL Server和PostgreSQL共享许多数据库管理系统(RDBMS)的基本概念,但它们在处理某些结构上的差异可能会让人感到困惑…

Codeforces Round 977 (Div. 2, based on COMPFEST 16 - Final Round)

致敬传奇调题王 HDK A.Meaning Mean给定一个序列 \(a\),每次选择 \(i,j\ (i\neq j)\),使得其缩成一个值为 \(\lfloor\frac{a_i+a_j}{2}\rfloor\) 的数,直至剩余一个数,求最终答案的最大值一开始想的是最小化 \(\lfloor\frac{a_i+a_j}{2}\rfloor\) 的损失,后来发现这点损失…

读数据工程之道:设计和构建健壮的数据系统02数据工程师

数据工程师1. 背景和技能 1.1. 数据工程是一个快速发展的领域,关于如何成为一名数据工程师仍然存在很多问题 1.2. 进入数据工程领域的人在教育、职业和技能方面有着不同的背景1.2.1. 每个进入该领域的人都应该投入大量的时间进行自学1.3. 从一个邻近的领域转到数据工程是最容易…