version=pmwiki-2.0.beta55 ordered=1 urlencoded=1 agent=Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.7.8) Gecko/20050511 Firefox/1.0.4 author=HaganFox host=216.161.175.221 name=PmWiki.PathVariables rev=16 targets=PmWiki.LayoutVariables,PmWiki.Variables,PmWiki.LinkVariables,PmWiki.PmWiki,PmWiki.EditVariables,PmWiki.UploadVariables text=%3c%3c|[[PmWiki.Variables]]|>>%0a%0aWhen dealing with file or path variables, one has to recognize the difference between working with urls and files on disk. For example:%0a* The include() statements are used to include other files (on disk) into the currently running PmWiki script. Thus they require paths on the server's filesystem. %0a* The $ScriptUrl and $PubDirUrl variables are used to tell a ''browser'', connecting via the webserver, how to execute the pmwiki script ($ScriptUrl) and the base url for getting files from PmWiki's pub/ directory ($PubDirUrl).%0a%0aNote that a browser needs a url (http://www.example.com/pmwiki/pub) while an include statement requires a server file path ($FarmD/scripts/something.php).%0a%0a:$ScriptUrl: is the url that you want people's browsers to use when accessing PmWiki, either as a field or farm. It's used whenever PmWiki needs to generate a link to another PmWiki page or action. PmWiki is usually fairly good about "guessing" the correct value for $ScriptUrl on its own, but sometimes an admin needs to set it explicitly because of url manipulations by the webserver (e.g., Cookbook:CleanUrls, mod_rewrite, bizarre PHP configurations, etc.).%0a%0a:$PubDirUrl: is the url that refers to the @@pub@@ directory. That directory contains all the files and subdirectories that must be directly accessible from a browser (e.g. CSS and HTML files). Most prominent here is the @@skins@@ subdirectory.%0a%0a:$FarmD:The directory on the server where the farm is located (i.e., the directory containing the farm's copy of ''pmwiki.php'' and the ''scripts/'' directory). This directory is automatically determined by pmwiki.php when it runs, and can be used to distinguish the farm's ''cookbook/'' and ''pub/'' subdirectories from a field's subdirectories.%0a%0a:$SkinDirUrl:Set by ''scripts/skins.php'' to be the base url of the current skin's directory (i.e., within a 'pub/skins/' directory). This variable is typically used inside of a skin .tmpl file to provide access to .css files and graphic images associated with the skin.%0a%0a:$UploadDir:The directory where uploads are to be stored. Defaults to ''uploads/'' in the pmwiki directory, but can be set to any location on the server. This directory must be writable by the webserver process if uploading is to occur.%0a%0a!!See also%0a* [[LinkVariables]] - variables that control the display of links in pages%0a* [[EditVariables]] - variables used when editing pages%0a* [[UploadVariables]] - variables used for uploads/attachments%0a time=1125539193