在Codeigniter中设置PHPMyAdmin子域

时间:2017-02-21 21:04:53

标签: php mysql codeigniter phpmyadmin

对于我的CodeIgniter网站,我希望能够通过phpMyAdmin访问数据库。我不知道如何设置它,所以我可以做tripmatcher.herokuapp.com/phpmyadmin。我已经下载了phpMyAdmin的最新稳定版本,但是如何完成这个过程以便我可以登录并访问生产数据库(我已经获得了访问预先存在的数据库的一些凭据)?我不确定从哪里开始。

1 个答案:

答案 0 :(得分:1)

我不鼓励您尝试将phpMyAdmin与CodeIgniter集成,而是建议您使用Web服务器指令完成此操作。例如,我使用Apache。当我在我的Ubuntu服务器上安装PHPMyAdmin时,我通常使用包管理器:

sudo apt-get install phpmyadmin

在Ubuntu / Debian上,这个软件包安装通常会导致phpmyadmin源安装在 / usr / share / phpmyadmin ,并且安装在 / etc / apache2 / conf的apache conf文件.D / phpmyadmin.conf 即可。我只是删除conf文件,然后将此指令添加到文件 /etc/apache2/sites-available/default-ssl.conf ,以便只能通过HTTPS访问phpmyadmin 。您可能需要在系统上编辑其他Web配置文件。

    # *adapted* from the phpmyadmin.conf installed
    # by the debian package (/etc/apache2/conf.d/phpmyadmin.conf)
    # NOTE this stuff represents a pretty significant juggling of the originally
    # installed directives
    # see http://www.linuxquestions.org/questions/showthread.php?p=4516840#post4516840
    Alias /phpmyadmin /usr/share/phpmyadmin
    <Directory /usr/share/phpmyadmin>
            Options FollowSymLinks
            Order allow,deny
            allow from all
            DirectoryIndex index.php

            <IfModule mod_php5.c>
                    AddType application/x-httpd-php .php
                    php_flag magic_quotes_gpc Off
                    php_flag track_vars On
                    php_flag register_globals Off
                    php_value include_path .
            </IfModule>
            <IfModule mod_authn_file.c>
                    AuthType Basic
                    AuthName "phpMyAdmin"
                    AuthUserFile /var/www/.htpasswd
            </IfModule>
            Require valid-user
    </Directory>

此指令指定别名,以便从/ usr / share / phpmyadmin中的文件提供对 https://example.com/phpmyadmin 的请求。

它还指定必须进行身份验证才能访问这些文件,因此您必须使用命令行中的htpasswd文件在文件/var/www/.htpasswd中创建用户/密码条目:

sudo htpasswd -c /var/www/.htpasswd some_user_name

该命令将提示您输入密码,它将截断并覆盖/var/www/.htpassd的内容。

几乎忘了!在更改其conf文件时,您必须重新启动或重新加载apache。

sudo service apache2 restart