如何在Laravel Homestead盒子上设置phpmyadmin?

时间:2014-05-21 15:49:09

标签: nginx laravel laravel-4 phpmyadmin

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

来安装它

sudo ln -s /usr/share/phpmyadmin/ /usr/share/nginx/htmlsudo service nginx restart

但它不起作用。

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

15 个答案:

答案 0 :(得分:120)

选项1:

这将从我编写的shell脚本安装最新版本的PhpMyAdmin。欢迎您查看on Github

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

    curl -sS https://raw.githubusercontent.com/grrnikos/pma/master/pma.sh | sh
    
  2. 选项2:

    这将从Ubuntu的存储库安装PhpMyAdmin(不是最新版本)。假设您的项目位于/home/vagrant/Code

    1. sudo apt-get install phpmyadmin 在提示时选择apache2或lighttpd。只需点击标签然后输入。

    2. sudo ln -s /usr/share/phpmyadmin/ /home/vagrant/code/phpmyadmin

    3. cd ~/Code && serve phpmyadmin.test /home/vagrant/code/phpmyadmin

    4. 注意:如果在步骤2中遇到创建符号链接的问题,请尝试第一个选项或参见Lyndon Watkins的回答。

      最后的步骤:

      1. 打开主计算机上的/etc/hosts文件并添加:

        127.0.0.1  phpmyadmin.test
        
      2. 转到http://phpmyadmin.test:8000

答案 1 :(得分:101)

第1步:

转到phpMyAdmin网站,下载最新版本并将其解压缩到您的代码目录

第2步:

打开homestead.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来加载新配置。


多数民众赞成

转到http://phpmyadmin.test:8000。它应该从那里起作用。关于这种方法的好处是,如果你需要销毁你的盒子,只要你将homestead.yaml文件和phpMyAdmin保存在你的代码目录中,你就不必再次设置phpMyAdmin。

===========

DaneSoul的重要更新

我在Homestead 5.3上尝试了这个指令,并在尝试打开http://phpmyadmin.test时遇到了“未指定输入文件”的问题。

最终我找到了解决方案:

您需要将phpmyadmin解压缩到

/home/vagrant/Code/phpMyAdmin/public

并写入homestead.yaml

- map: phpmyadmin.test
  to: /home/vagrant/Code/phpMyAdmin/public

几乎所有相同,但路径中的/public目录使其正常工作!

此外,在我的配置中,我使用的是http://phpmyadmin.test,而不是http://phpmyadmin.test:8000

更新注意:请按此article更改域扩展名。

答案 2 :(得分:12)

Nikos Gr的回答为我工作;但是我需要修改第2步和第3步,因为我的主机系统在创建符号链接时遇到了问题。

我改变了:

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

要:

cd ~/Code && serve phpmyadmin.app /usr/share/phpmyadmin/

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

答案 3 :(得分:11)

Jyeon's Answer的简化版。您不需要在Homestead.yaml文件中共享〜/ Code文件夹:

folders:
    - map: /Users/{yourName}/Code/phpMyAdmin
      to: /home/vagrant/Code/phpMyAdmin

只需从PhpMyAdmin下载最新版本的PhpMyAdmin,然后将解压后的文件放在~/Code/phpMyAdmin文件夹中,然后按照此处的2步操作:

第1步: 打开homestead.yaml文件并添加这些行

站点:      - map:phpmyadmin.app       to:/ home / vagrant / Code / phpMyAdmin

第3步: 打开您的主机文件并添加以下行:

192.168.10.10 phpmyadmin.app

现在运行vagrant reload --provision命令,你就可以了。

在浏览器中打开phpmyadmin.app地址,您将看到phpmyadmin界面。

答案 4 :(得分:6)

安装phpMyAdmin

  • 使用vagrant ssh通过SSH连接到Homestead vagrant框并输入以下命令:

     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

导航到http://phpmyadmin.app:8000,您现在应该看到phpMyAdmin登录页面。

More info available here if you need it

答案 5 :(得分:4)

Nikos Gr的answer的一个变体似乎有点简单(因为它不需要为你的Homestead盒子上的每个项目提供新的符号链接)并为我工作。

  1. 在Homestead框内,运行sudo apt-get install phpmyadmin。安装期间请勿选择任何选项。
  2. 在您的主机上,将以下行添加到Homestead.yaml文件中:

    - map: phpmyadmin.dev to: /usr/share/phpmyadmin

  3. 在您的主机上,将以下行添加到hosts文件中:

    192.168.10.10 phpmyadmin.dev

  4. ...和Homestead的phpMyAdmin将在phpmyadmin.dev

    上提供

答案 6 :(得分:2)

您可以在vagrant upprovision家园后自动安装phpmyadmin,方法是在{{1}之后将以下代码段添加到 Homestead \ scripts \ homestead.rb 文件中}

# Update Composer On Every Provision

你的hoomestead.rb文件现在应该看起来像这样

# 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

其他一些条目被截断以保持此简短

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 destroyvagrant up

注意:这使用位于https://raw.githubusercontent.com/grrnikos/pma/master/pma.sh

的Nikos Gr脚本

答案 7 :(得分:1)

最后它对我有用,我必须解决一些问题:

Homestead.yaml文件:

- map: phpmyadmin.test
  to: /home/vagrant/code/phpmyadmin/

我不得不从最后删除/public。我将phpmyadmin(来自Homestead目录的vagrant ssh命令之后)安装到'代码中。其他项目所在的文件夹。当'代码'是小写的,它必须在任何地方(或其他方式):文件夹名称,yaml文件,甚至安装后执行这些命令:

sudo ln -s /usr/share/phpmyadmin/ /home/vagrant/code/phpmyadmin
cd ~/code && serve phpmyadmin.test /home/vagrant/code/phpmyadmin

答案 8 :(得分:0)

对于另一个我发现超级简单并且开箱即用的替代方案我使用serve.sh脚本在Homestead框内部设置了一个新的Nginx站点:

服务adminer.app / home / vagrant / Code / adminer /

然后在那里我将一页继承者放到了phpmyadmin,Adminer。我还将其重命名为“index.php”以使其正常工作。然后在将adminer.app条目添加到我的hosts文件后,我很高兴。

多年来我没有使用基于Web的MySQL界面,因为我不喜欢维护phpMyAdmin,但这个很好。一个文件(如果你想要一个更好的主题,还有一个可选的CSS文件),这就是全部。易于维护和更新。

答案 9 :(得分:0)

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

$ 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

由于未知原因,请在命令文件中创建配置文件,如下所示:

$ 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行的Listen指令中添加80.将更改应用于:

$ sudo service nginx reload

答案 10 :(得分:0)

这是最简单的解决方案。没有映射,所有都需要。

  1. 从此处https://www.phpmyadmin.net/downloads

  2. 下载最新的phpmyadmin版本
  3. 在主根目录/公用文件夹中创建一个名为 phpmyadmin 的文件夹,并在此处解压缩 phpmyadmin。

  4. 运行 yourwebsite.com/phpmyadmin

答案 11 :(得分:0)

我在这里写作是为了让我当地的流浪环境对工作友好。

第一步 - 启动 vagrant 并登录

vagrant up 
vagrant ssh

第 2 步 - 转到正确的目录。 (取决于您的文件树)

cd <VagrantDirectory>

第 3 步 - 安装 phpmyadmin。

curl -sS https://raw.githubusercontent.com/grrnikos/pma/master/pma.sh | bash

第 4 步 - 配置 Homestead.yaml

map: phpmyadmin.test
to: /home/vagrant/<VagrantDirectory>/phpmyadmin

第 5 步 - 重新加载流浪者。

vagrant reload

第 6 步 - 配置 phpmyadmin

转到您的 phpmyadmin 目录。将 config.sample.inc.php 复制到 config.inc.php

cp config.sample.inc.php config.inc.php

第 7 步 - 使用文本编辑器编辑 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.

第 8 步 - 现在在您最喜欢的浏览器上浏览新的 PHPMyAdmin。

http://phpmyadmin.test

答案 12 :(得分:-1)

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

serve adminer.app /home/vagrant/Code/adminer/adminer

答案 13 :(得分:-1)

由于我不能对Jyeon解决方案发表评论,因为我的代表不够高,所以我会回答这个问题。在Linux(openSUSE Leap)中使用Vagrant 1.8.1和laravel / homestead(virtualbox,0.4.0)为我工作:

第1步:

转到phpMyAdmin网站,下载最新版本并将其解压缩到项目目录中。

第2步:

在Homestead.yaml文件中添加以下行:

folders:
    - map: ~/Code/phpMyAdmin
      to: /home/vagrant/Code/phpMyAdmin

Sites:
    - map: phpmyadmin.app
      to: /home/vagrant/Code/phpMyAdmin

第3步:

将以下行添加到您的主机文件中:

192.168.10.10   phpmyadmin.app

第4步:

启动流浪者环境并通过SSH连接到计算机后,使用命令serve:将虚拟主机设置为使用phpMyAdmin:

cd ~/Code
serve phpmyadmin.app /home/vagrant/Code/phpMyAdmin/

多数民众赞成!

转到http://phpmyadmin.app它应该可以使用,您可以使用您的用户和密码宅基地默认登录。这个方法的好处是你可以设置你的phpmyadmin,只要你把它保存在你的Codetead.yaml文件和php目录中的phpMyAdmin中。

答案 14 :(得分:-1)

我从here安装了phpMyAdmin

然后将这些设置放入 config.inc.php

/* 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;

并通过Apache打开(我有一个xampp)。就我而言,我将phpMyAdmin放置在D:\xampp\htdocs\pma中,这使我可以在localhost/pma网址下打开。

一切正常!