1

我觉得我不知道我在做什么。

我的 CodeIngiter 应用程序使用此 URL 在 WAMP 中运行良好:http://localhost/myapp

但是,当我将它移动到我的 AWS EC2 微型实例 Amazon Linux AMI/var/www/html/myapp并尝试使用此 URL 访问我的应用程序时http://xxx-xxx-xxx-xxx-xxx.compute-1.amazonaws.com/myapp,我得到的只是一个空白页面。

这是我尝试过的一切:

1.禁用“索引”显示

cd /etc/httpd/conf/
sudo nano httpd.conf
选项 -Indexes FollowSymLinks

2.在php.ini中开启错误报告

error_reporting = E_ALL | E_STRICT
display_errors = 开启

3.开发环境
index.php(我的应用程序的根目录)中,

define('ENVIRONMENT', 'development');

4.重启Apache
cd /etc/init.d
sudo httpd -k restart

5. 文档根目录

DocumentRoot "/var/www/html/"
也试过: DocumentRoot "/var/www/html"
DocumentRoot "/var/www/html/myapp"

6. index.php的回声测试

index.php 我从我的(我的应用程序的根目录)以及我的控制器打印了一条测试消息。两者都有效。我不明白为什么我的视图没有显示。

<?php echo "test"; ... //This worked.

7.替换 www/html/myapp www/html/

我将应用程序的内容从“myapp”文件夹移到www/html目录中。另外,DocumentRoot "/var/www/html/". 此外,我的.htaccess文件(在 myapp 的根目录中)是"RewriteBase /"(见下面的第 8 点)。此外,我从 相同的空白页面中删除了.htaccess 。/var/www/html/

8..htaccess

以下.htaccess文件位于我的 CodeIgniter 应用程序的根目录中。我也尝试更改 RewriteBase /myapp为,RewriteBase /但我仍然得到这个空白页,没有错误。

RewriteEngine On

# Put your installation directory here:
# If your URL is www.example.com/, use /
# If your URL is www.example.com/site_folder/, use /site_folder/

RewriteBase /myapp

# Do not enable rewriting for files or directories that exist
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

# For reuests that are not actual files or directories,
# Rewrite to index.php/URL
RewriteRule ^(.*)$ index.php/$1 [PT,L]

我不知道该再试一次。

4

0 回答 0