php - 在 Ubuntu 16.04 LTS 上运行 var/www/html/中的 Codeigniter 项目时找不到 404 页面?

标签 php mysql codeigniter ubuntu-16.04 lamp

I have installed LAMP (Linux, Apache2, MySQL, and PHP) stack.

我有一个名为“mahasiswa”的项目目录。当我在 Windows 8 上运行它时运行良好(使用 XAMPP)。然后,当我在我的 Ubuntu 16.04 LTS 上运行它时,var/www/html/ 不再工作了。

结果截图:

image of the error message

是否有特殊配置可以在 Ubuntu 16.04 LTS 上运行 CodeIgniter 项目?

::任何帮助将不胜感激。谢谢。


编辑

我的配置文件:

  1. etc/apache2/sites-available/000-default.conf

enter image description here

  1. etc/apache2/sites-available/mahasiswa.conf

enter image description here

  1. 等/主机

enter image description here

  1. mahasiswa/.htaccess

enter image description here

浏览器当前结果:

enter image description here

我不知道我在这个配置中到底遗漏了什么。我已经按照下面的@eeya 说明/回答进行操作。任何人都可以帮助我,请 :D

最佳答案

关于设置 apache 虚拟主机配置的问题:这是如何进行的。如果您有 [root] 权限,请打开您的 [终端] 并转到此目录:/etc/apache2/sites-available

然后创建一个新的虚拟主机配置,现在,我们将此配置命名为您的项目名称。

sudo vim mahasiswa.confsudo nano mahasiswa.conf

<VirtualHost *:80>
    ServerName local.mahasiswa.com 
    DocumentRoot /var/www/html/mahasiswa
    <Directory /var/www/html/mahasiswa/>
        AllowOverride All
        Require all granted
        Allow from all
    </Directory>
</VirtualHost>

1) ServerName:用作 DNS(将其视为除 http://localhosthttp://127.0.0.1 之外的另一个服务器名称)

2) DocumentRoot:从这个词本身来看,是您的[项目]目录(例如/var/www/html/mahasiswa)

3) 目录:用于包含一组仅适用于指定目录、该目录的子目录以及相应目录中的文件的指令。在这种情况下,我们想要控制对目录的访问权限:

AllowOverride All(这可以是全部或无)

要求全部授予

允许所有

您可以在此处了解更多信息:http://httpd.apache.org/docs/current/mod/core.html#directory

返回,保存此新配置后,转到您的 /etc/hosts(主机文件)(例如 sudo vim/etc/hosts)并添加 ff:

127.0.0.1 本地主机 local.mahasiswa.com

将这些更改保存到 [hosts] 文件后,执行此命令:

sudo a2ensite mahasiswa.conf

sudo a2enmod rewrite

现在这将 [启用] 您的新站点配置并同时启用 [url rewrite] 模块。然后执行:

sudo service apache2 reload

从命令本身来看,这意味着您需要重新加载 [apache2],因此配置会在之后生效。

然后尝试访问您的新域名:local.mahasiswa.com。 您应该能够看到您需要的 CI 页面。

如需进一步引用,请在此处查看 [Digital Ocean] 指南:https://www.digitalocean.com/community/tutorials/how-to-set-up-apache-virtual-hosts-on-ubuntu-16-04

希望这对您的情况有所帮助。

编辑: 在命名 [controller] 文件(例如 mahasiswa)时,您可能需要将 [UpperCase] 而不是 [lowercase] 格式设置为(例如 Mahasiswa)

关于php - 在 Ubuntu 16.04 LTS 上运行 var/www/html/中的 Codeigniter 项目时找不到 404 页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44212664/

相关文章:

PHP:未捕获的 ImagickException:PDFDelegateFailed

php - 面向对象的数据库连接

php - 如何设置 Laravel 与中间表的多对多关系,中间表不仅是数据透视表,还代表模型

mysql - 如何在 spring boot 应用程序中为远程数据库连接配置数据源

javascript - 使用 Ajax 插入成功但数据库行为空

php - 在 Codeigniter 中连接两个数据库

phpmyadmin 在大型表的限制子句中使用指数(例如 : 1. 6E32)

php - 如何从 MySql 将轨道排列到 PHP 中的播放列表

mysql - 如何使用 Puppet 更新 MySQL 表?

php - STR_TO_DATE 在我的查询中不起作用