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配置数据库时,选择
,然后按Enter键Yes
- 当提示输入数据库管理用户的密码时,输入
,然后按enter键secret
- 当提示输入phpmyadmin的MySQL应用程序密码时,输入
并按enter键secret
- 提示确认密码时,再次输入
,然后按enter键secret
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
/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
/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.