![](/img/trans.png)
[英]Problems in setting up PHP, Apache and MySQL Dev Environment on Windows 8
[英]Setting up PHP for Apache on Windows
我一直試圖在我的Apache Web服務器(本地主機)中從php.net設置PHP。
在過去的一天半里,我一直在Apache站點,php.net站點,SO以及其他任何地方瀏覽文檔,以查找當前錯誤的答案,以嘗試解決問題。 以下是我目前的設置和(可能的錯誤)理解的一些細節。
Define SRVROOT "/Apache/00"
ServerRoot "${SRVROOT}"
Apache的公共目錄設置為htdocs
。 Apache通過localhost
可以毫無問題地生成其下目錄的列表。 只是為了確保我有正確的地址(它是Apache),我按以下說明進行了開/關測試。
我運行了為PHP提供的Windows MSI。 然后我調整了/conf/httpd.conf
文件以添加:
ScriptAlias /php/ "${SRVROOT}/php/"
AddType application/x-httpd-php .php
注意: php
, htdocs
(公共文件)和conf
目錄都在同一目錄SRVROOT
的根目錄中。
http://localhost/lib/
可能會產生:
Index of /lib
Parent Directory
amd64/
web.jar
x86/
關閉Apache並刷新清單時,我看到了FF錯誤。
Unable to connect
Firefox can't establish a connection to the server at localhost.
因此,Apache本身似乎運行良好,當它運行時,我可以列出目錄。
http://localhost/php/
顯示:
Forbidden
You don't have permission to access /php/ on this server.
好吧,這似乎合乎邏輯,Apache現在承認該目錄的存在,但表示不打算被公開瀏覽。
我在包含的php
目錄的根目錄中有一個phpinfo.php
。
<?phpinfo();?>
我希望如果我瀏覽到http://localhost/phpinfo.php
會給我信息,但我卻收到404消息:
Not Found
The requested URL /phpinfo.php was not found on this server.
對於http://localhost/php/phpinfo.php
我得到禁止消息:
Forbidden
You don't have permission to access /php/phpinfo.php on this server.
error.log
sl:warn] [pid 1504:tid 336] AH01909: RSA certificate configured for localhost:443 does NOT include an ID which matches the server name
[Sun Aug 04 19:06:01.995343 2013] [ssl:warn] [pid 1504:tid 336] AH02292: Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366)
[Sun Aug 04 19:06:02.298078 2013] [ssl:warn] [pid 1504:tid 336] AH01909: RSA certificate configured for localhost:443 does NOT include an ID which matches the server name
[Sun Aug 04 19:06:02.298078 2013] [ssl:warn] [pid 1504:tid 336] AH02292: Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366)
[Sun Aug 04 19:06:02.300031 2013] [mpm_winnt:notice] [pid 1504:tid 336] AH00354: Child: Starting 64 worker threads.
[Sun Aug 04 19:06:03.279523 2013] [authz_core:error] [pid 1504:tid 1004] [client ::1:50589] AH01630: client denied by server configuration: I:/Apache/00/php/index.html
[Sun Aug 04 19:15:39.932843 2013] [authz_core:error] [pid 1504:tid 1004] [client ::1:50599] AH01630: client denied by server configuration: I:/Apache/00/php/
[Sun Aug 04 19:21:49.700421 2013] [authz_core:error] [pid 1504:tid 1004] [client ::1:50608] AH01630: client denied by server configuration: I:/Apache/00/php/phpinfo.php
[Sun Aug 04 19:26:58.432843 2013] [authz_core:error] [pid 1504:tid 1004] [client ::1:50621] AH01630: client denied by server configuration: I:/Apache/00/php/phpinfo.php
[Sun Aug 04 19:37:26.403546 2013] [mpm_winnt:notice] [pid 4400:tid 324] AH00422: Parent: Received shutdown signal -- Shutting down the server.
[Sun Aug 04 19:37:28.403546 2013] [mpm_winnt:notice] [pid 1504:tid 336] AH00364: Child: All worker threads have exited.
[Sun Aug 04 19:37:28.418195 2013] [mpm_winnt:notice] [pid 4400:tid 324] AH00430: Parent: Child process 1504 exited successfully.
我想顯示phpinfo.php
文件。 有人能看到我犯的愚蠢錯誤嗎(我是新手)?
這些是我一直在看的主要文檔:
您可能會收到權限錯誤,因為phpinfo.php文件沒有設置權限,因此您正在運行的Apache服務器可以讀取它。 可以將Apache配置為在運行時將權限授予受限用戶帳戶,並且如果文件的文件安全權限不允許該用戶帳戶讀取文件,則會出現權限錯誤。 請記住,這適用於最終路徑名中的每個目錄,即/ Apache和/ Apache / 00和/ Apache / 00 / php和/Apache/00/php/phpinfo.php必須由Apache運行的用戶帳戶全部讀取下。
另一種可能性是,如果您的httpd.conf具有默認訪問策略為拒絕優先的目錄指令,則可能需要在httpd.conf中添加目錄指令以允許訪問/ php /。
我也沒有提到您將PHP Apache模塊DLL安裝到Apache modules文件夾中的位置,也沒有提及將模塊添加到httpd.conf文件中的位置。 如果不加載PHP模塊,PHP文件將不會通過PHP。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.