「PhpPgAdmin」の版間の差分
(同期) |
(同期) |
||
1行目: | 1行目: | ||
{{lowercase title}} |
{{lowercase title}} |
||
− | [[Category:ウェブ |
+ | [[Category:ウェブ管理インターフェイス]] |
[[en:phpPgAdmin]] |
[[en:phpPgAdmin]] |
||
{{Related articles start}} |
{{Related articles start}} |
||
55行目: | 55行目: | ||
====nginx==== |
====nginx==== |
||
+ | [[nginx#FastCGI]] をセットアップして PHP の設定ファイルは別にしてください。 |
||
− | バーチャルホストのディレクトリ (例: {{ic|/srv/http/<domain>/public_html/}}) から {{ic|/usr/share/webapps/phppgadmin}} ディレクトリにシンボリックリンクを作成してください: |
||
+ | {{ic|phpmyadmin.<domain>}} として PhpPgAdmin にアクセスできるようになります。 |
||
− | # ln -s /usr/share/webapps/phppgadmin /srv/http/<domain>/public_html/phppgadmin |
||
− | + | 以下のように server ブロックで(サブ)ドメインを設定: |
|
+ | {{bc|<nowiki> |
||
− | Also, you need to use at less php-fpm (you need it), you have to make it running first (if you not do it, you will have a "502 bad gateway" error instead of the phpPgadmin first page). |
||
+ | server { |
||
− | |||
+ | server_name phppgadmin.<domain.tld>; |
||
− | For make it running after install the package, make a "systemctl start php-fpm" (and enable it if you want to use it all the time and/or after reboot, by "systemctl enable php-fpm) |
||
+ | root /usr/share/webapps/phppgadmin; |
||
− | |||
+ | index index.php; |
||
− | server { |
||
+ | include php.conf; |
||
− | server_name phppgadmin.<domain.tld>; |
||
+ | } |
||
− | access_log /srv/http/<domain>/logs/phppgadmin.access.log; |
||
+ | </nowiki>}} |
||
− | error_log /srv/http/<domain.tld>/logs/phppgadmin.error.log; |
||
− | |||
− | location / { |
||
− | root /srv/http/<domain.tld>/public_html/phppgadmin; |
||
− | index index.html index.htm index.php; |
||
− | } |
||
− | |||
− | location ~ \.php$ { |
||
− | root /srv/http/<domain.tld>/public_html/phppgadmin; |
||
− | fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; |
||
− | fastcgi_index index.php; |
||
− | fastcgi_param SCRIPT_FILENAME /srv/http/<domain.tld>/public_html/phppgadmin/$fastcgi_script_name; |
||
− | include fastcgi_params; |
||
− | } |
||
− | } |
||
− | |||
− | but there is an other simple way to do it running (also, if you need some other web apps, it would be easy more after): |
||
− | |||
− | server { |
||
− | listen 80; |
||
− | server_name localhost default_server; |
||
− | root /srv/http/www/public_html; |
||
− | index index.html index.html index.php; |
||
− | location ~ \.php$ { |
||
− | try_files $uri =404; |
||
− | include fastcgi_params; |
||
− | fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; |
||
− | fastcgi_index index.php; |
||
− | fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } } |
||
− | |||
− | with this config, your phppgadmin will be accessible at http://localhost/phppgadmin directly and you will be able also to add some other web apps easy in the same way |
||
− | |||
− | (just have to paste/link them under public_html directory and find it at localhost/your_webapps) |
||
− | |||
− | this config make working all php file inside your localhost directly |
||
− | |||
− | (also it is a good idea to allow a user http http in the top of this nginx file and make directory srv/http/ under http owner/group) |
||
− | |||
− | the "server" serve only if you want to create some other server name designed only for this... |
||
− | |||
− | also, make a root inside the location of php is not a simple way to do and make the config file in trouble... |
||
===phpPgAdmin の設定=== |
===phpPgAdmin の設定=== |
2017年10月20日 (金) 23:25時点における最新版
関連記事
phpPgAdmin は Apache/PHP フロントエンドを使用して PostgreSQL データベースを管理するウェブベースのツールです。
目次
インストール
PhpPgAdmin は Apache など PHP が使えるウェブサーバーを必要とします。Apache HTTP Server と Apache HTTP Server#PHP を見てセットアップしてください。
phppgadmin パッケージをインストールしてください。
設定
PHP
/etc/php/php.ini
を編集して以下の行をアンコメントして PHP の pgsql
拡張を有効にする必要があります:
extension=pgsql.so
PHP が /etc/webapps
にアクセスできるか確認してください。必要ならば /etc/php/php.ini
の open_basedir
に追加します:
open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/:/etc/webapps
ウェブサーバー
Apache
Apache 設定ファイルを作成:
/etc/httpd/conf/extra/phppgadmin.conf
Alias /phppgadmin "/usr/share/webapps/phppgadmin" <Directory "/usr/share/webapps/phppgadmin"> DirectoryIndex index.php AllowOverride All Options FollowSymlinks Require all granted </Directory>
そして /etc/httpd/conf/httpd.conf
でインクルード:
# phpPgAdmin configuration Include conf/extra/phppgadmin.conf
デフォルトでは誰でも phpPgAdmin のページを閲覧できてしまいます。変更するには /etc/httpd/conf/extra/phppgadmin.conf
を編集してください。例えば、同じマシンからのアクセスだけを許可するには Require all granted
を Require local
に置き換えます。
Lighttpd
lighttpd の php の設定は apache と全く同じです。
lighttpd の設定に phppgadmin のエイリアスを作成してください:
alias.url = ( "/phppgadmin" => "/usr/share/webapps/phppgadmin/")
そして設定で mod_alias, mod_fastcgi, mod_cgi を有効にしてください (server.modules セクション)。
lighttpd で php ファイルを使えるようにする方法は Lighttpd#FastCGI を参照。
lighttpd を再起動して http://localhost/phppgadmin/index.php を開いてください。
nginx
nginx#FastCGI をセットアップして PHP の設定ファイルは別にしてください。
phpmyadmin.<domain>
として PhpPgAdmin にアクセスできるようになります。
以下のように server ブロックで(サブ)ドメインを設定:
server { server_name phppgadmin.<domain.tld>; root /usr/share/webapps/phppgadmin; index index.php; include php.conf; }
phpPgAdmin の設定
phpPgAdmin の設定ファイルは /etc/webapps/phppgadmin/config.inc.php
にあります。ローカルで PostgreSQL サーバーを動かしている場合は、何も設定しなくても動作するはずです。
PostgreSQL サーバーが localhost 上にない場合は、以下の行を編集してください:
$conf['servers'][0]['host'] = '';
phpPgAdmin にアクセス
phpPgAdmin のインストールが完了したら、使用する前に以下のコマンドで apache サーバーを再起動してください:
# systemctl restart httpd.service
http://localhost/phppgadmin/ から phpPgAdmin にアクセスできます。
トラブルシューティング
セキュリティ上の理由でログインが拒否される
extra login security が true の場合、phpPgAdmin でパスワードを指定しなかったり特定のユーザー名 (pgsql, postgres, root, administrator) でのログインが拒否されます。false
に設定したい場合 FAQ を読んで PostgreSQL の pg_hba.conf
を変更してパスワードによるローカル接続を有効にしてください。
/etc/webapps/phppgadmin/config.inc.php
を編集して以下の行を:
$conf['extra_login_security'] = true;
以下のように変更:
$conf['extra_login_security'] = false;