IISでindex.phpをデフォルトドキュメントに設定する
IISでindex.phpをデフォルトドキュメントに設定する
「既定のドキュメント」をダブルクリックして設定画面を開く。
「追加」をクリック。
「index.php」を入力し、OKをクリック。
IISにrewriteモジュールを追加(Windows Server 2016)
IISにrewriteモジュールを追加(Windows Server 2016)
[日本語]
https://www.microsoft.com/ja-jp/download/details.aspx?id=7435
[英語]
https://www.microsoft.com/en-us/download/confirmation.aspx?id=47337
上記ダウンロードサイトURLより、rewrite module 2.0 をダウンロードする。
Windows Server 2016, 2019, Windows10では、日本語版がインストールできない。
その為、表示は英語になってしまうが、英語版をインストールする。
(※レジストリを変更すれば、日本語版もインストール可能。)
ダウンロードした「rewrite_amd64.msi」を実行する。
「I accept the terms in the License Agreement.」にチェックを入れて、
「Install」をクリック。
「Finish」をクリック。
Windows Server 2016 にIIS+PHP7.3をインストール
Windows Server 2016 にIIS+PHP7.3をインストール
php7.3をダウンロードする。
PHP の公式サイトにアクセスし、「Downloads」ページを開く。
「Windows downloads」をクリック。
Windows+IISの場合は、「Non Thread Safe」を選択。
Zipファイルをダウンロードする。
解凍したフォルダを、Dドライブ直下に移動し、フォルダ名を「php」に変更する。
D:\php
「インターネット インフォメーション サービス (IIS) マネージャ」を起動する。
「ハンドラー マッピング」を開く。
「モジュールマップの追加…」をクリック。
上図のように入力し、「OK」をクリック。
phpフォルダ内の、
php.ini-development
または
php.ini-production
を「php.ini」のファイル名でコピーする。
php.ini-developmentとphp.ini-productionの違いは、
基本的にはメッセージ関係の設定があるか無いか。
エラーメッセージを表示したければ、php.ini-devalopmentをコピーする。
これで、IISのサイト上でPHPが利用できるようになる。
PowerShell を管理者権限で起動(Windows Server 2019)
PowerShell を管理者権限で起動
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.
PS C:\Users\administrator> mkdir c:\nfs-share
ディレクトリ: C:\
Mode LastWriteTime Length Name
—- ————- —— —-
d—– 2019/XX/XX 13:37 nfs-share
PS C:\Users\administrator> new-nfsshare -name “nfs-share” `
>> -path “c:\nfs-share” `
>> -enableunmappedaccess $true `
>> -authentication Sys
Name Availability Path
—- ———— —-
nfs-share Standard (not clustered) c:\nfs-share
PS C:\Users\administrator> Grant-NfsSharePermission -Name “nfs-share” `
>> -ClientName “192.168.x.xx” `
>> -ClientType “host” `
>> -Permission “readwrite” `
>> -AllowRootAccess $True
PS C:\Users\administrator> Get-NfsShare -Name “nfs-share”
Name Availability Path
—- ———— —-
nfs-share Standard (not clustered) c:\nfs-share
PS C:\Users\administrator> Get-NfsSharePermission -Name “nfs-share”
Name ClientName Permission AllowRootAccess
—- ———- ———- —————
nfs-share 192.168.x.xx READ, WRITE True
nfs-share All Machines DENY ACCESS False
PS C:\Users\administrator>
WindowsクライアントからNFS接続
コマンドプロンプトから実行する。
>mount -o mtype=hard 192.168.x.x:/home/nfs-share V:
V: は 192.168.x.x:/home/nfs-share に正常に接続しました
現在マウント中のディレクトリを表示する。
>mount
Local Remote Properties
——————————————————————————-
V: \\192.168.x.x\home\nfs-share UID=-2, GID=-2
rsize=131072, wsize=131072
mount=hard, timeout=0.8
retry=1, locking=yes
fileaccess=755, lang=SHIFT-JIS
casesensitive=no
sec=sys
NFSサーバーの設定
・/etc/exportsに共有設定を追加
書式
共有するディレクトリ 接続可能なIPアドレス(オプション)
オプション ro: 読み取りのみ rw: 読み書き可能 no_root_squash: デフォルトでは、クライアント マシン上のユーザー root によって行われたファイル要求は、そのサーバー上のユーザー nobody によって行われたかのように扱われる。
例
/home/nfs-share 192.168.0.1(rw,no_root_squash)
サーバーの起動
NFS を起動する。
/etc/init.d/nfs start
※Portmapと関連 rpc デーモンは、NFS を起動する前に実行されている必要があります。
/etc/exports の変更
NFS サーバーが既に実行されているときに /etc/exports に変更を加えた場合は、nfsd に /etc/exports の読み取りを強制して、変更を適用する必要があります。コマンド プロンプトから、次のように入力します。
usr/sbin/exportfs -ra
NFSサーバーでマウント状況を表示する
・クライアントのホスト名とマウントされたディレクトリを表示
# showmount -a
All mount points on nfs-server:
192.168.x.x:/home/nfs-share
192.168.x.x:/home/nfs-share
192.168.x.x:/home/nfs-share
・クライアントからマウントされているディレクトリの表示
# showmount -d
Directories on nfs-server:
/home/nfs-share
・NFSサーバのエクスポートリストを表示
# showmount -e
Export list for nfs-server:
/home/nfs-share 192.168.x.x/24
Debianのバージョン確認
Debian 8.3 で実行すると、
# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 8.3 (jessie)
Release: 8.3
Codename: jessie
lsb-releaseパッケージが入っていない場合はインストールする。
# apt-get install lsb-release
Postfixのメールキュー
Postfixのメールキューを確認する。
# postqueue -p
キューをID指定で削除する。
# postsuper -d [QUEUE ID]
キューを全て削除する。
# postsuper -d ALL
キューの強制送信
# postfix flush
Debian9 strech samba-toolでProvision failedエラー
samba-toolsを実行すると、下記エラーが発生し、smb.confが作成できない。
# samba-tool domain provision \
> –use-rfc2307 –interactive –use-ntvfs \
> –function-level=2008_R2
ERROR(
File “/usr/lib/python2.7/dist-packages/samba/netcmd/domain.py”, line 434, in run
nosync=ldap_backend_nosync, ldap_dryrun_mode=ldap_dryrun_mode)
File “/usr/lib/python2.7/dist-packages/samba/provision/__init__.py”, line 2022, in provision
sitename=sitename, rootdn=rootdn, domain_names_forced=(samdb_fill == FILL_DRS))
File “/usr/lib/python2.7/dist-packages/samba/provision/__init__.py”, line 603, in guess_names
raise ProvisioningError(“guess_names: ‘realm =’ was not specified in supplied %s. Please remove the smb.conf file and let provision generate it” % lp.configfile)
以下のように対応する。
/etc/hosts にドメイン情報を付加する
【変更前】
$ cat hosts
127.0.0.1 localhost
127.0.1.1 myhost
【変更後】
$ sudo vim /etc/hosts
127.0.0.1 localhost.localdomain localhost
127.0.1.1 myhost.orangebox.lbn.bz myhost
/etc/hostname にドメイン情報を付加する
$ sudo vim /etc/hostname
orangebox.lbn.bz
ネットワークインタフェースの再起動
$ sudo /etc/init.d/networking restart