在codeignitor .htaccess不工作的redhat服务器上相同.htaccess是完美的工作在本地服务器即xampp也改变了“允许无”到“允许所有”.请给予答案与相应的“redhat”只.
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]
</IfModule>
字符串
phpinfo()显示Apache Configuration
2条答案
按热度按时间rseugnpd1#
重写模块似乎是从你的屏幕截图加载的。你也可以通过添加这一节来从你的VirtualHost中启用.htaccess:
字符串
vohkndzv2#
如果您的.htaccess文件在红帽服务器上无法正常工作,您可以检查和调整一些事项。以下是故障排除和解决问题的一些步骤:
校验mod_rewrite模块:
请确保在Apache服务器上启用了mod_rewrite模块。您可以通过运行以下命令来执行此操作:
字符串
如果未列出该模块,您可能需要启用它。在基于红帽的系统上,您可以用途:
型
启用模块后,重启Apache:
型
检查允许设置:
正如您所提到的,您已经更改了AllowPath指令。请确保在正确的配置文件中进行更改。在Red Hat系统上,Apache配置通常位于/etc/httpd/conf/httpd.conf文件中。
打开Apache配置文件:
型
找到与您的Web目录对应的部分,并确保它包含以下或类似的行:
apache:
型
修改后,重启Apache:
型
**检查.htaccess文件位置:**确保.htaccess文件位于CodeIgniter应用程序的根目录中。
**在.htaccess中验证RewriteBase:**在您的.htaccess文件中,您可以尝试添加或修改RewriteBase指令。例如:
型
调整RewriteBase以匹配应用程序的结构。
检查Apache错误代码:
检查Apache错误日志中与.htaccess文件相关的任何消息。错误日志位置可能会有所不同,但通常位于/var/log/httpd/error_log中。查找可能指示问题来源的任何错误或警告。
sudo tail -f /var/log/httpd/error_log
在进行这些调整后,.htaccess文件应该可以在Red Hat服务器上正常工作。如果您遇到其他问题,请查看Apache错误日志,以进一步了解问题。