私の問題は、PHPスクリプトのURLが正しく解析されないことです。つまり、PHPスクリプトで使用されているドメイン名は、サーバー内からアクセスしたときにサーバーに再確認されません。
コンテキストでPDFを生成するPHPスクリプト(ライブラリを使用)がありますmpdf
。 PDFは、画像を含むHTMLテンプレートで構成されています。画像URLは、src="/images/foo.png"
.PDF生成ライブラリが文句を言う形式です。
mPDFエラー:画像エラー(https://mywebsite.com/images/foo.png):画像ファイルが見つかりません
上記の画像URLをブラウザに入力すると、画像が表示されるため、内部サーバードメインの確認の問題であることがわかります。
これらのURLを内部的に確認するには、Cent OS 6.8 VPSで何を設定する必要がありますか?アイテムを追加しましたが、/etc/hosts
まだ解決されていません。変更を適用するには、サーバーで一部のサービスを再起動する必要があります。私のサーバーはGoDaddyを使用しており、以下の内容はすべてファイルにあります。今mywebsite.com
追加しました127.0.0.1
。
127.0.0.1 localhost.localdomain localhost mywebsite.com
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
XX.XX.XXX.222 mywebsite.com sXXX-XXX-XX-71.secureserver.net sXXX-XXX-XX-71 ip-XX-XX-XXX-222.ip.secureserver.net ip-XX-XX-XXX-222
XXX.XXX.XX.71 mywebsite.com
答え1
PHPパスはUnixパスのように動作します。 (これCDコマンド)
ここでは相対パスを使用しています。
..フォルダに移動します。
。現在フォルダに残ります。
~既定のフォルダーでなければなりません。
最初は実際にルートフォルダを見ません。あなたの場合、これはサーバー構成で定義したサーバーパスです。
いくつかの例:
src="../images/foo.png"
src="./images/foo.png"
src="~/images/foo.png"
src="../../../images/foo.png"
それ以外の場合は絶対パスを試してみてください。