通过cPanel部署CodeIgniter4至虚拟主机的问题求助
CodeIgniter4 cPanel 部署问题解决
一、直接访问域名加载站点的解决方案
你当前使用的.htaccess规则未生效,可替换为以下配置尝试:
RewriteEngine On # 可选:强制跳转到HTTPS,建议开启 RewriteCond %{HTTPS} !=on RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] # 将非public路径的请求转发到public目录 RewriteCond %{REQUEST_URI} !^/public/ RewriteRule ^(.*)$ /public/$1 [L]
或者用更适配CodeIgniter4的写法,确保请求正确解析:
RewriteEngine On RewriteBase / # 跳过已存在的文件和目录 RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # 重写请求到public入口文件 RewriteRule ^(.*)$ public/index.php?/$1 [L,QSA]
替换完成后清空浏览器缓存,再访问域名测试即可。
二、生产环境无需部署的文件/文件夹
除了你已排除的spark和build,以下文件/文件夹也无需上传到服务器:
tests/:单元测试专属文件夹,仅开发阶段需要phpunit.xml.dist:PHPUnit测试配置文件.env.example:环境变量示例文件,生产环境使用自定义配置的.env即可.gitignore:Git忽略规则文件,生产环境无作用README.md、CONTRIBUTING.md等项目说明文档app/Config/Development.php:开发环境专属配置文件(若生产环境使用Production配置)vendor/bin/:Composer命令行工具目录,生产环境无需保留
注意:composer.json和composer.lock建议保留,方便后续在服务器更新依赖;.env必须部署,且需将环境设置为production,同时确保数据库等配置信息正确。
内容的提问来源于stack exchange,提问作者Vpp Man
相关产品推荐
相关产品推荐

