Nginx 我如何在一个拉拉维尔宅基地盒子上设置phpMyAdmin?

Nginx 我如何在一个拉拉维尔宅基地盒子上设置phpMyAdmin?,nginx,laravel,laravel-4,phpmyadmin,Nginx,Laravel,Laravel 4,Phpmyadmin,我通过运行sudo apt get install phpymyadmin然后运行 sudo ln-s/usr/share/phpmyadmin//usr/share/nginx/html和sudo服务nginx重启 但它不起作用 注意:安装时我没有选择任何apache2或lighttpd选项。安装phpMyAdmin 使用vagrant SSH将SSH连接到Homestead vagrant box中,然后键入以下命令: sudo apt-get install phpmyadmin

我通过运行
sudo apt get install phpymyadmin
然后运行

sudo ln-s/usr/share/phpmyadmin//usr/share/nginx/html
sudo服务nginx重启

但它不起作用


注意:安装时我没有选择任何apache2或lighttpd选项。

安装phpMyAdmin

  • 使用vagrant SSH将SSH连接到Homestead vagrant box中,然后键入以下命令:

     sudo apt-get install phpmyadmin
    
  • 当提示选择Web服务器时,选择apache2并按Enter键,即可通过

  • 当提示使用dbconfig common为phpmyadmin配置数据库时,选择
    Yes
    ,然后按Enter键

  • 当提示输入数据库管理用户的密码时,输入
    secret
    ,然后按enter键

  • 当提示输入phpmyadmin的MySQL应用程序密码时,输入
    secret
    并按enter键

  • 提示确认密码时,再次输入
    secret
    ,然后按enter键

然后为Nginx创建并配置站点

sudo ln -s /usr/share/phpmyadmin/ /usr/share/nginx/html/phpmyadmin

cd /etc/nginx/sites-available
sudo cp homestead.app phpmyadmin.app

sudo sed -i 's/homestead.app/phpmyadmin.app/g' /etc/nginx/sites-available/phpmyadmin.app
sudo sed -i 's/home\/vagrant\/Code\/Laravel\/public/usr\/share\/nginx\/html\/phpmyadmin/g' /etc/nginx/sites-available/phpmyadmin.app

sudo ln -s /etc/nginx/sites-available/phpmyadmin.app /etc/nginx/sites-enabled/phpmyadmin.app
sudo service nginx restart
sudo service php5-fpm retart
将phpMyAdmin.app添加到主机文件中

 127.0.0.1   phpmyadmin.app
导航到,您现在应该会看到phpMyAdmin登录页面

选项1: 这将从我编写的shell脚本安装PhpMyAdmin的最新版本。欢迎您查看

  • 从代码/项目目录运行以下命令:

     curl -sS https://raw.githubusercontent.com/grrnikos/pma/master/pma.sh | bash
    
  • 备选案文2: 这将从Ubuntu的存储库安装PhpMyAdmin(不是最新版本)。假设您的项目位于
    /home/vagrant/code

  • sudo apt get install phpmyadmin
    Donot在出现提示时选择apache2或lighttpd。只需点击tab并输入

  • sudo ln-s/usr/share/phpmyadmin//home/vagrant/code/phpmyadmin

  • cd~/code&&service phpmyadmin.test/home/vagrant/code/phpmyadmin

  • 注意:如果在第2步创建符号链接时遇到问题,请尝试第一个选项,或参阅下面林登·沃特金斯的答案

    最后步骤:
  • 在主机上打开
    /etc/hosts
    文件并添加:

     127.0.0.1  phpmyadmin.test
    

  • 对于另一个我发现非常简单且开箱即用的替代方案,我使用serve.sh脚本从Homestead box内部建立了一个新的Nginx站点:

    service adminer.app/home/vagrant/Code/adminer/

    然后在那里,我放下了phpmyadmin的一页后续内容。我还将其重命名为“index.php”以使其正常工作。然后在将adminer.app条目添加到我的主机文件后,我就可以开始了


    由于我不喜欢维护phpMyAdmin,我已经多年没有使用基于web的MySQL界面了,但这一个很好。一个文件(如果你想要一个更好的主题,加上一个可选的CSS文件)就够了。易于维护和更新。

    Nikos Gr的回答对我很有用;但是,我需要修改步骤2和步骤3,因为我的主机系统在创建符号链接时遇到问题

    我改变了:

    sudo ln -s /usr/share/phpmyadmin/ /home/vagrant/Code/phpmyadmin
    cd ~/Code && serve phpmyadmin.app /home/vagrant/Code/phpmyadmin
    
    致:

    (无法对原始解决方案发表评论,因为我的代表级别不够高!)

    步骤1: 转到该网站,下载最新版本并将其解压缩到您的代码目录中

    步骤2: 打开
    homestad.yaml
    文件并添加这些行

    folders:
        - map: /Users/{yourName}/Code/phpMyAdmin
          to: /home/vagrant/Code/phpMyAdmin
    sites:
        - map: phpmyadmin.test
          to: /home/vagrant/Code/phpMyAdmin
    
    步骤3: 打开主机文件并添加以下行:

    127.0.0.1 phpmyadmin.test
    
    步骤4: 如果vagrant已经在运行,您可能需要运行
    vagrant provision
    来加载新配置


    就这样 去。应该从那里开始。这种方法的好处在于,如果您需要销毁您的文件盒,您就不必再次设置phpMyAdmin,只要您将homestead.yaml文件和phpMyAdmin保存在代码目录中

    ===========

    来自DaneSoul的重要更新

    我在Homestead 5.3上尝试了此说明,但在尝试打开时遇到了“未指定输入文件”的问题

    最后我找到了解决办法:

    您需要将phpmyadmin解包到

    /home/vagrant/Code/phpMyAdmin/public
    
    并在
    homestad.yaml中写入

    - map: phpmyadmin.test
      to: /home/vagrant/Code/phpMyAdmin/public
    
    所以几乎都一样,但是路径中的这个
    /public
    目录使它工作起来

    此外,在我的配置中,我使用,而不是


    更新说明:按照此操作更改域扩展名

    在我的情况下,接受的解决方案可以正常工作,除了:

    $ cd ~/Code && serve phpmyadmin.app /home/vagrant/Code/phpmyadmin
    dos2unix: converting file /vagrant/scripts/serve.sh to Unix format ...
     * Restarting nginx nginx                                                                                                                            [fail] 
    php5-fpm stop/waiting
    php5-fpm start/running, process 4112
    
    由于未知原因,serve命令文件创建配置文件,如所示:

    $ sudo tail -f /var/log/nginx/error.log 
    2015/03/18 11:54:16 [emerg] 3671#0: invalid number of arguments in "listen" directive in /etc/nginx/sites-enabled/phpmyadmin.app:2
    
    编辑配置:

    $ editor /etc/nginx/sites-enabled/phpmyadmin.app
    
    并在第2行添加80以侦听指令。将更改应用于:

    $ sudo service nginx reload
    

    您可以在
    vagrant up
    provision
    您的宅地时自动安装phpmyadmin,方法是在
    之后将以下代码片段添加到homestad\scripts\homestad.rb文件中,在每个provision上更新Composer

    # Install phpMyAdmin on every provision
        config.vm.provision "shell" do |s|
          s.inline = "curl -sS https://raw.githubusercontent.com/grrnikos/pma/master/pma.sh | sh"
        end
    
    您的hoomestead.rb文件现在应该看起来像这样

    class Homestead
      def Homestead.configure(config, settings)
        # Configure The Box
        config.vm.box = "laravel/homestead"
        config.vm.hostname = "homestead"
    
        # Configure A Private Network IP
        config.vm.network :private_network, ip: settings["ip"] ||= "192.168.10.10"
    
    一些其他条目会被截断以保持此简短

        # Update Composer On Every Provision
        config.vm.provision "shell" do |s|
          s.inline = "/usr/local/bin/composer self-update"
        end
    
        # Install phpMyAdmin on every provision
        config.vm.provision "shell" do |s|
          s.inline = "curl -sS https://raw.githubusercontent.com/grrnikos/pma/master/pma.sh | sh"
        end
    
        # Configure Blackfire.io
        if settings.has_key?("blackfire")
          config.vm.provision "shell" do |s|
            s.path = "./scripts/blackfire.sh"
            s.args = [settings["blackfire"][0]["id"], settings["blackfire"][0]["token"]]
          end
        end
      end
    end
    
    保存文件并运行
    vagrant destroy
    然后
    vagrant up
    或只是
    vagrant reload


    注意:这使用了位于此处的Nikos Gr脚本

    adminer
    索引文件位于
    adminer/adminer
    中,请尝试:

    serve adminer.app /home/vagrant/Code/adminer/adminer
    
    Nikos Gr的一个变体似乎更简单一些(因为它不需要在你的宅地盒子上的每个项目都有一个新的符号链接),并且对我有用

  • 在Homestead框内,运行
    sudo apt get install phpmyadmin
    。安装过程中不要选择任何选项
  • 在主机上,将以下行添加到
    Homestead.yaml
    文件中:

    -map:phpmyadmin.dev
    收件人:/usr/share/phpmyadmin

  • 在主机上,将以下行添加到
    hosts
    文件中:

    192.168.10.10 phpmyadmin.dev

  • …宅基地的phpMyAdmin将可用
    serve adminer.app /home/vagrant/Code/adminer/adminer
    
    folders:
        - map: ~/Code/phpMyAdmin
          to: /home/vagrant/Code/phpMyAdmin
    
    Sites:
        - map: phpmyadmin.app
          to: /home/vagrant/Code/phpMyAdmin
    
    192.168.10.10   phpmyadmin.app
    
    cd ~/Code
    serve phpmyadmin.app /home/vagrant/Code/phpMyAdmin/
    
    folders:
        - map: /Users/{yourName}/Code/phpMyAdmin
          to: /home/vagrant/Code/phpMyAdmin
    
    - map: phpmyadmin.test
      to: /home/vagrant/code/phpmyadmin/
    
    sudo ln -s /usr/share/phpmyadmin/ /home/vagrant/code/phpmyadmin
    cd ~/code && serve phpmyadmin.test /home/vagrant/code/phpmyadmin
    
    /* Server parameters */
    $cfg['Servers'][$i]['host'] = '127.0.0.1';
    $cfg['Servers'][$i]['port'] = '33060';
    $cfg['Servers'][$i]['compress'] = false;
    $cfg['Servers'][$i]['AllowNoPassword'] = false;
    
    vagrant up 
    vagrant ssh
    
    cd <VagrantDirectory>
    
    curl -sS https://raw.githubusercontent.com/grrnikos/pma/master/pma.sh | bash
    
    map: phpmyadmin.test
    to: /home/vagrant/<VagrantDirectory>/phpmyadmin
    
    vagrant reload
    
    cp config.sample.inc.php config.inc.php
    
    //Comment out the old configuration that was already here.
    $cfg['Servers'][$i]['auth_type'] = 'config';
    $cfg['Servers'][$i]['host'] = 'localhost'; // Also works with the IP address.
    $cfg['Servers'][$i]['user'] = 'homestead'; // Username of MySQL, Default is homestead.
    $cfg['Servers'][$i]['password'] = 'secret'; // Password. Default password is secret
    $cfg['Servers'][$i]['extension'] = 'mysqli';
    $cfg['Servers'][$i]['compress'] = false;
    $cfg['Servers'][$i]['AllowNoPassword'] = false;
    $cfg['CheckConfigurationPermissions'] = false; // Since you are on local, Leave this false.