Installing PHP (ISAPI) in Windows 2000 Professional (#8)

  

8) Tweak the permissions



In the actual instance when we installed PHP in W2KPro, the C: drive (i.e., the drive in which the Winnt systems folder is located) was not converted to NTFS but was kept as FAT32.  The most important differences between these two file systems is that NTFS is more precise and strict about file/folder access permissions and sharing.  NTFS works on a per file/folder "ownership" concept while FAT32 has no concept of file/folder "ownership" and is relatively loose about read/write permissions and sharing.  If, after going through all the steps in manually installing PHP in W2K Pro and PWS, but PHP still does not work, big chance the problem lies in the read/write permissions and sharing of certain files/folders because the OS is running on NTFS.


Assuming you have been running W2K Pro for a while already, you may have already forgotten which file system your OS in running on.  So the logical place to continue is to check which file system the Windows 2000 Pro is currently running on. 

Check out whether your C: drive is FAT32 or NTFS.  To do this, double click "My Computer" icon on the desktop, select "Local Disk (C:)" and right-click, Properties...

From the above, we can see that Drive C: (A) is running on FAT32 file system (B).   That known, we can close the "Local Disk (C) Properties" window by clicking on the "OK" button (C).  If the file system is NTFS, we need to be more conscious of the files read/write access permissions as it is possible to allow "Everyone" to "Read" files in a folder, and yet prevent access to a particular file in that folder (if the file system used is NTFS.) 

The File System is NTFS: 

If  the C: drive is NTSC, we will need to explicitly check and give "Read" permission on the php.ini file to "Everyone". Remember that the php.ini is located in the "C:\PHP " folder in this installation.  Open that folder, select the php.ini file, right click on it and select "Properties."  In the "Properties" window, select the "Security" tab and explicitly give at least "Read" permission to "Everyone".

Access Permission to the PHP folder itself

Regardless of whether the OS in running on FAT32 or NTFS, we should give "Everyone" "Read" permission to the "C:\PHP " folder.  Open the C: drive ("My Computer"-"Local Disk (C:)" ), and select the PHP folder,  then right click it and select the "Sharing" option (D).

 This will open the "PHP Properties" window (E).  Click on the "Sharing" tab (F) if you are not yet in it.  Select the "Share this folder" option (G) and then, click on the "Permissions" button (H).

In the "Permissions for PHP" window (I), you should have "Everyone" in the "Name" box (J), and the "Allow" check box must be checked for "Read" (L).  If "Full Control" and/or "Change" are checked for "Allow", remove the check marks on them as we only need to provide "Read" permissions.  If "Everyone" is not there, you will need to add it first by clicking on the "Add" button (K)



If the C: drive was in  NTFS, the above screen shot of "PHP Properties" window (E) would have another tab called "Security".  This tab is missing because the C: drive is in FAT32 in our specific example here.  If your C: drive is on NTFS, you may want to tweak the access permissions from the "Security" tab instead.



 




WARNING
:  When you share the PHP folder, do not set the Web Sharing (see the middle, "Web Sharing" tab of the "PHP Properties" window (E)).  Set only the local machine "users' " access rights.  What we really want to do is have PWS and PHP executables have read access to PHP's libraries and configuration files.  We do NOT want outsiders (the web visitors) to have direct access to any of the PHP files and libraries.


Giving "Everyone" "Read" permission to the contents of the PHP folder seems like overkill.  "Everyone" is the default user for FAT32 sharing in W2K Pro and it worked the first time around so we will leave this matter at that.)


Previous Step: 7) Check the Environment Variables.

Next Step      : 9A) Configure PWS (Personal Web Server) to use PHP ISAPI

 

Previous Next

Copyright © 2006 Chiba, Japan, asiawide.or.jp (All Rights Reserved).