php开发_php环境搭建

学php开发,首先是要把环境给搭建起来,然后再写出自己的第一个"helloworld"小程序。

那么怎样搭建php开发环境呢?

我是这么做的:

1.下载工具:WAMP5-v1.7.4.rar

下载地址是:http://ishare.iask.sina.com.cn/f/13827329.html?from=like

下载后,解压,得到:wamp5_1.7.4.exe安装文件。双击它,就可以安装了。

它里面集成了Apache,mysql,php等开发所需的工具。安装完成后,只需要配置一些东西就可以了。

如:mysql的端口号,Apache服务器的端口号等等,如果你的机器上面没有安装过mysql,那么端口号

的配置就可以不用管他了;如果你机器上面没有安装过tomcat服务器,那么也没有必要去配置Apache服务器的

端口号。这时候,那可以直接进入开发状态。

下面是我机器上的mysql配置:

  1 # MySQL Server Instance Configuration File
  2 # ----------------------------------------------------------------------
  3 # Generated by the MySQL Server Instance Configuration Wizard
  4 #
  5 #
  6 # Installation Instructions
  7 # ----------------------------------------------------------------------
  8 #
  9 # On Linux you can copy this file to /etc/my.cnf to set global options,
 10 # mysql-data-dir/my.cnf to set server-specific options
 11 # (@localstatedir@ for this installation) or to
 12 # ~/.my.cnf to set user-specific options.
 13 #
 14 # On Windows you should keep this file in the installation directory 
 15 # of your server (e.g. C:\Program Files\MySQL\MySQL Server 4.1). To
 16 # make sure the server reads the config file use the startup option 
 17 # "--defaults-file". 
 18 #
 19 # To run run the server from the command line, execute this in a 
 20 # command line shell, e.g.
 21 # mysqld --defaults-file="C:\Program Files\MySQL\MySQL Server 4.1\my.ini"
 22 #
 23 # To install the server as a Windows service manually, execute this in a 
 24 # command line shell, e.g.
 25 # mysqld --install MySQL41 --defaults-file="C:\Program Files\MySQL\MySQL Server 4.1\my.ini"
 26 #
 27 # And then execute this in a command line shell to start the server, e.g.
 28 # net start MySQL41
 29 #
 30 #
 31 # Guildlines for editing this file
 32 # ----------------------------------------------------------------------
 33 #
 34 # In this file, you can use all long options that the program supports.
 35 # If you want to know the options a program supports, start the program
 36 # with the "--help" option.
 37 #
 38 # More detailed information about the individual options can also be
 39 # found in the manual.
 40 #
 41 #
 42 # CLIENT SECTION
 43 # ----------------------------------------------------------------------
 44 #
 45 # The following options will be read by MySQL client applications.
 46 # Note that only client applications shipped by MySQL are guaranteed
 47 # to read this section. If you want your own MySQL client program to
 48 # honor these values, you need to specify it as an option during the
 49 # MySQL client library initialization.
 50 #
 51 [client]
 52 
 53 port=3306
 54 
 55 
 56 # SERVER SECTION
 57 # ----------------------------------------------------------------------
 58 #
 59 # The following options will be read by the MySQL Server. Make sure that
 60 # you have installed the server correctly (see above) so it reads this 
 61 # file.
 62 #
 63 [wampmysqld]
 64 
 65 # The TCP/IP Port the MySQL Server will listen on
 66 port=3306
 67 
 68 
 69 #Path to installation directory. All paths are usually resolved relative to this.
 70 basedir=D:/wamp/mysql
 71 
 72 #log file
 73 log-error=D:/wamp/logs/mysql_error.log
 74 
 75 #Path to the database root
 76 datadir=D:/wamp/mysql/data
 77 
 78 # The default character set that will be used when a new schema or table is
 79 # created and no character set is defined
 80 default-character-set=latin1
 81 
 82 # The default storage engine that will be used when create new tables when
 83 default-storage-engine=INNODB
 84 
 85 # The maximum amount of concurrent sessions the MySQL server will
 86 # allow. One of these connections will be reserved for a user with
 87 # SUPER privileges to allow the administrator to login even if the
 88 # connection limit has been reached.
 89 max_connections=255
 90 
 91 # Query cache is used to cache SELECT results and later return them
 92 # without actual executing the same query once again. Having the query
 93 # cache enabled may result in significant speed improvements, if your
 94 # have a lot of identical queries and rarely changing tables. See the
 95 # "Qcache_lowmem_prunes" status variable to check if the current value
 96 # is high enough for your load.
 97 # Note: In case your tables change very often or if your queries are
 98 # textually different every time, the query cache may result in a
 99 # slowdown instead of a performance improvement.
100 query_cache_size=8M
101 
102 # The number of open tables for all threads. Increasing this value
103 # increases the number of file descriptors that mysqld requires.
104 # Therefore you have to make sure to set the amount of open files
105 # allowed to at least 4096 in the variable "open-files-limit" in
106 # section [mysqld_safe]
107 table_cache=510
108 
109 # Maximum size for internal (in-memory) temporary tables. If a table
110 # grows larger than this value, it is automatically converted to disk
111 # based table This limitation is for a single table. There can be many
112 # of them.
113 tmp_table_size=13M
114 
115 
116 # How many threads we should keep in a cache for reuse. When a client
117 # disconnects, the client's threads are put in the cache if there aren't
118 # more than thread_cache_size threads from before.  This greatly reduces
119 # the amount of thread creations needed if you have a lot of new
120 # connections. (Normally this doesn't give a notable performance
121 # improvement if you have a good thread implementation.)
122 thread_cache_size=12
123 
124 #*** MyISAM Specific options
125 
126 # The maximum size of the temporary file MySQL is allowed to use while
127 # recreating the index (during REPAIR, ALTER TABLE or LOAD DATA INFILE.
128 # If the file-size would be bigger than this, the index will be created
129 # through the key cache (which is slower).
130 myisam_max_sort_file_size=100G
131 
132 # If the temporary file used for fast index creation would be bigger
133 # than using the key cache by the amount specified here, then prefer the
134 # key cache method.  This is mainly used to force long character keys in
135 # large tables to use the slower key cache method to create the index.
136 myisam_max_extra_sort_file_size=100G
137 
138 # If the temporary file used for fast index creation would be bigger
139 # than using the key cache by the amount specified here, then prefer the
140 # key cache method.  This is mainly used to force long character keys in
141 # large tables to use the slower key cache method to create the index.
142 myisam_sort_buffer_size=8M
143 
144 # Size of the Key Buffer, used to cache index blocks for MyISAM tables.
145 # Do not set it larger than 30% of your available memory, as some memory
146 # is also required by the OS to cache rows. Even if you're not using
147 # MyISAM tables, you should still set it to 8-64M as it will also be
148 # used for internal temporary disk tables.
149 key_buffer_size=9M
150 
151 # Size of the buffer used for doing full table scans of MyISAM tables.
152 # Allocated per thread, if a full scan is needed.
153 read_buffer_size=64K
154 read_rnd_buffer_size=256K
155 
156 # This buffer is allocated when MySQL needs to rebuild the index in
157 # REPAIR, OPTIMZE, ALTER table statements as well as in LOAD DATA INFILE
158 # into an empty table. It is allocated per thread so be careful with
159 # large settings.
160 sort_buffer_size=203K
161 
162 
163 #*** INNODB Specific options ***
164 
165 
166 # Use this option if you have a MySQL server with InnoDB support enabled
167 # but you do not plan to use it. This will save memory and disk space
168 # and speed up some things.
169 #skip-innodb
170 
171 # Additional memory pool that is used by InnoDB to store metadata
172 # information.  If InnoDB requires more memory for this purpose it will
173 # start to allocate it from the OS.  As this is fast enough on most
174 # recent operating systems, you normally do not need to change this
175 # value. SHOW INNODB STATUS will display the current amount used.
176 innodb_additional_mem_pool_size=2M
177 
178 # If set to 1, InnoDB will flush (fsync) the transaction logs to the
179 # disk at each commit, which offers full ACID behavior. If you are
180 # willing to compromise this safety, and you are running small
181 # transactions, you may set this to 0 or 2 to reduce disk I/O to the
182 # logs. Value 0 means that the log is only written to the log file and
183 # the log file flushed to disk approximately once per second. Value 2
184 # means the log is written to the log file at each commit, but the log
185 # file is only flushed to disk approximately once per second.
186 innodb_flush_log_at_trx_commit=1
187 
188 # The size of the buffer InnoDB uses for buffering log data. As soon as
189 # it is full, InnoDB will have to flush it to disk. As it is flushed
190 # once per second anyway, it does not make sense to have it very large
191 # (even with long transactions).
192 innodb_log_buffer_size=1M
193 
194 # InnoDB, unlike MyISAM, uses a buffer pool to cache both indexes and
195 # row data. The bigger you set this the less disk I/O is needed to
196 # access data in tables. On a dedicated database server you may set this
197 # parameter up to 80% of the machine physical memory size. Do not set it
198 # too large, though, because competition of the physical memory may
199 # cause paging in the operating system.  Note that on 32bit systems you
200 # might be limited to 2-3.5G of user level memory per process, so do not
201 # set it too high.
202 innodb_buffer_pool_size=15M
203 
204 # Size of each log file in a log group. You should set the combined size
205 # of log files to about 25%-100% of your buffer pool size to avoid
206 # unneeded buffer pool flush activity on log file overwrite. However,
207 # note that a larger logfile size will increase the time needed for the
208 # recovery process.
209 innodb_log_file_size=10M
210 
211 # Number of threads allowed inside the InnoDB kernel. The optimal value
212 # depends highly on the application, hardware as well as the OS
213 # scheduler properties. A too high value may lead to thread thrashing.
214 innodb_thread_concurrency=8

下面是我机器上的Apache的配置: 有些开发者在第一次配置apache服务的时候,老是启动不了Apache服务器,大多数原因是因为apache的端口号被占用了

解决的办法是:修改端口号,如下面我的端口号就修改为"2000"

  1 #
  2 # This is the main Apache HTTP server configuration file.  It contains the
  3 # configuration directives that give the server its instructions.
  4 # See <URL:http://httpd.apache.org/docs/2.2/> for detailed information.
  5 # In particular, see 
  6 # <URL:http://httpd.apache.org/docs/2.2/mod/directives.html>
  7 # for a discussion of each configuration directive.
  8 #
  9 # Do NOT simply read the instructions in here without understanding
 10 # what they do.  They're here only as hints or reminders.  If you are unsure
 11 # consult the online docs. You have been warned.  
 12 #
 13 # Configuration and logfile names: If the filenames you specify for many
 14 # of the server's control files begin with "/" (or "drive:/" for Win32), the
 15 # server will use that explicit path.  If the filenames do *not* begin
 16 # with "/", the value of ServerRoot is prepended -- so "logs/foo.log"
 17 # with ServerRoot set to "C:/Program Files/Apache Software Foundation/Apache2.2" will be interpreted by the
 18 # server as "C:/Program Files/Apache Software Foundation/Apache2.2/logs/foo.log".
 19 #
 20 # NOTE: Where filenames are specified, you must use forward slashes
 21 # instead of backslashes (e.g., "c:/apache" instead of "c:\apache").
 22 # If a drive letter is omitted, the drive on which Apache.exe is located
 23 # will be used by default.  It is recommended that you always supply
 24 # an explicit drive letter in absolute paths, however, to avoid
 25 # confusion.
 26 #
 27 
 28 # ThreadsPerChild: constant number of worker threads in the server process
 29 # MaxRequestsPerChild: maximum  number of requests a server process serves
 30 ThreadsPerChild 250
 31 MaxRequestsPerChild  0
 32 
 33 #
 34 # ServerRoot: The top of the directory tree under which the server's
 35 # configuration, error, and log files are kept.
 36 #
 37 # Do not add a slash at the end of the directory path.  If you point
 38 # ServerRoot at a non-local disk, be sure to point the LockFile directive
 39 # at a local disk.  If you wish to share the same ServerRoot for multiple
 40 # httpd daemons, you will need to change at least LockFile and PidFile.
 41 #
 42 ServerRoot "D:/wamp/apache2"
 43 
 44 #
 45 # Listen: Allows you to bind Apache to specific IP addresses and/or
 46 # ports, instead of the default. See also the <VirtualHost>
 47 # directive.
 48 #
 49 # Change this to Listen on specific IP addresses as shown below to 
 50 # prevent Apache from glomming onto all bound IP addresses (0.0.0.0)
 51 #
 52 #Listen 12.34.56.78:80
 53 Listen 2000
 54 
 55 #
 56 # Dynamic Shared Object (DSO) Support
 57 #
 58 # To be able to use the functionality of a module which was built as a DSO you
 59 # have to place corresponding `LoadModule' lines at this location so the
 60 # directives contained in it are actually available _before_ they are used.
 61 # Statically compiled modules (those listed by `httpd -l') do not need
 62 # to be loaded here.
 63 #
 64 # Example:
 65 # LoadModule foo_module modules/mod_foo.so
 66 #
 67 LoadModule actions_module modules/mod_actions.so
 68 LoadModule alias_module modules/mod_alias.so
 69 LoadModule asis_module modules/mod_asis.so
 70 LoadModule auth_basic_module modules/mod_auth_basic.so
 71 #LoadModule auth_digest_module modules/mod_auth_digest.so
 72 #LoadModule authn_anon_module modules/mod_authn_anon.so
 73 #LoadModule authn_dbm_module modules/mod_authn_dbm.so
 74 LoadModule authn_default_module modules/mod_authn_default.so
 75 LoadModule authn_file_module modules/mod_authn_file.so
 76 #LoadModule authz_dbm_module modules/mod_authz_dbm.so
 77 LoadModule authz_default_module modules/mod_authz_default.so
 78 LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
 79 LoadModule authz_host_module modules/mod_authz_host.so
 80 LoadModule authz_user_module modules/mod_authz_user.so
 81 LoadModule autoindex_module modules/mod_autoindex.so
 82 LoadModule cern_meta_module modules/mod_cern_meta.so
 83 LoadModule cgi_module modules/mod_cgi.so
 84 #LoadModule dav_module modules/mod_dav.so
 85 #LoadModule dav_fs_module modules/mod_dav_fs.so
 86 #LoadModule deflate_module modules/mod_deflate.so
 87 LoadModule dir_module modules/mod_dir.so
 88 LoadModule env_module modules/mod_env.so
 89 #LoadModule expires_module modules/mod_expires.so
 90 #LoadModule file_cache_module modules/mod_file_cache.so
 91 #LoadModule headers_module modules/mod_headers.so
 92 LoadModule imagemap_module modules/mod_imagemap.so
 93 LoadModule include_module modules/mod_include.so
 94 #LoadModule info_module modules/mod_info.so
 95 LoadModule isapi_module modules/mod_isapi.so
 96 LoadModule log_config_module modules/mod_log_config.so
 97 LoadModule mime_module modules/mod_mime.so
 98 #LoadModule mime_magic_module modules/mod_mime_magic.so
 99 #LoadModule proxy_module modules/mod_proxy.so
100 #LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
101 #LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
102 #LoadModule proxy_connect_module modules/mod_proxy_connect.so
103 #LoadModule proxy_http_module modules/mod_proxy_http.so
104 #LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
105 LoadModule negotiation_module modules/mod_negotiation.so
106 #LoadModule rewrite_module modules/mod_rewrite.so
107 LoadModule setenvif_module modules/mod_setenvif.so
108 #LoadModule speling_module modules/mod_speling.so
109 #LoadModule status_module modules/mod_status.so
110 #LoadModule unique_id_module modules/mod_unique_id.so
111 LoadModule userdir_module modules/mod_userdir.so
112 #LoadModule usertrack_module modules/mod_usertrack.so
113 #LoadModule vhost_alias_module modules/mod_vhost_alias.so
114 #LoadModule ssl_module modules/mod_ssl.so
115 LoadModule php5_module "D:/wamp/php/php5apache2_2.dll"
116 
117 # 'Main' server configuration
118 #
119 # The directives in this section set up the values used by the 'main'
120 # server, which responds to any requests that aren't handled by a
121 # <VirtualHost> definition.  These values also provide defaults for
122 # any <VirtualHost> containers you may define later in the file.
123 #
124 # All of these directives may appear inside <VirtualHost> containers,
125 # in which case these default settings will be overridden for the
126 # virtual host being defined.
127 #
128 
129 #
130 # ServerAdmin: Your address, where problems with the server should be
131 # e-mailed.  This address appears on some server-generated pages, such
132 # as error documents.  e.g. admin@your-domain.com
133 #
134 ServerAdmin webmaster@localhost
135 
136 #
137 # ServerName gives the name and port that the server uses to identify itself.
138 # This can often be determined automatically, but we recommend you specify
139 # it explicitly to prevent problems during startup.
140 #
141 # If your host doesn't have a registered DNS name, enter its IP address here.
142 #
143 ServerName localhost:2000
144 
145 #
146 # DocumentRoot: The directory out of which you will serve your
147 # documents. By default, all requests are taken from this directory, but
148 # symbolic links and aliases may be used to point to other locations.
149 #
150 DocumentRoot "D:/wamp/www"
151 
152 #
153 # Each directory to which Apache has access can be configured with respect
154 # to which services and features are allowed and/or disabled in that
155 # directory (and its subdirectories). 
156 #
157 # First, we configure the "default" to be a very restrictive set of 
158 # features.  
159 #
160 <Directory />
161     Options FollowSymLinks
162     AllowOverride None
163     Order deny,allow
164     Deny from all
165     Satisfy all
166 </Directory>
167 
168 #
169 # Note that from this point forward you must specifically allow
170 # particular features to be enabled - so if something's not working as
171 # you might expect, make sure that you have specifically enabled it
172 # below.
173 #
174 
175 #
176 # This should be changed to whatever you set DocumentRoot to.
177 #
178 <Directory "D:/wamp/www">
179 
180     #
181     # Possible values for the Options directive are "None", "All",
182     # or any combination of:
183     #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
184     #
185     # Note that "MultiViews" must be named *explicitly* --- "Options All"
186     # doesn't give it to you.
187     #
188     # The Options directive is both complicated and important.  Please see
189     # http://httpd.apache.org/docs/2.2/mod/core.html#options
190     # for more information.
191     #
192     Options Indexes FollowSymLinks
193 
194     #
195     # AllowOverride controls what directives may be placed in .htaccess files.
196     # It can be "All", "None", or any combination of the keywords:
197     #   Options FileInfo AuthConfig Limit
198     #
199     AllowOverride all
200 
201     #
202     # Controls who can get stuff from this server.
203     #
204 #   onlineoffline tag - don't remove
205     Order Allow,Deny
206     Allow from all
207 
208 </Directory>
209 
210 #
211 # DirectoryIndex: sets the file that Apache will serve if a directory
212 # is requested.
213 #
214 <IfModule dir_module>
215     DirectoryIndex index.php index.php3 index.html index.htm index.html.var
216 </IfModule>
217 
218 #
219 # The following lines prevent .htaccess and .htpasswd files from being 
220 # viewed by Web clients. 
221 #
222 <FilesMatch "^\.ht">
223     Order allow,deny
224     Deny from all
225 </FilesMatch>
226 
227 #
228 # ErrorLog: The location of the error log file.
229 # If you do not specify an ErrorLog directive within a <VirtualHost>
230 # container, error messages relating to that virtual host will be
231 # logged here.  If you *do* define an error logfile for a <VirtualHost>
232 # container, that host's errors will be logged there and not here.
233 #
234 ErrorLog ../logs/apache_error.log
235 
236 #
237 # LogLevel: Control the number of messages logged to the error_log.
238 # Possible values include: debug, info, notice, warn, error, crit,
239 # alert, emerg.
240 #
241 LogLevel warn
242 
243 <IfModule log_config_module>
244     #
245     # The following directives define some format nicknames for use with
246     # a CustomLog directive (see below).
247     #
248     LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
249     LogFormat "%h %l %u %t \"%r\" %>s %b" common
250 
251     <IfModule logio_module>
252       # You need to enable mod_logio.c to use %I and %O
253       LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
254     </IfModule>
255 
256     #
257     # The location and format of the access logfile (Common Logfile Format).
258     # If you do not define any access logfiles within a <VirtualHost>
259     # container, they will be logged here.  Contrariwise, if you *do*
260     # define per-<VirtualHost> access logfiles, transactions will be
261     # logged therein and *not* in this file.
262     #
263     CustomLog ../logs/access.log common
264 
265     #
266     # If you prefer a logfile with access, agent, and referer information
267     # (Combined Logfile Format) you can use the following directive.
268     #
269     #CustomLog logs/access.log combined
270 </IfModule>
271 
272 <IfModule alias_module>
273     #
274     # Redirect: Allows you to tell clients about documents that used to 
275     # exist in your server's namespace, but do not anymore. The client 
276     # will make a new request for the document at its new location.
277     # Example:
278     # Redirect permanent /foo http://localhost/bar
279 
280     #
281     # Alias: Maps web paths into filesystem paths and is used to
282     # access content that does not live under the DocumentRoot.
283     # Example:
284     # Alias /webpath /full/filesystem/path
285     #
286     # If you include a trailing / on /webpath then the server will
287     # require it to be present in the URL.  You will also likely
288     # need to provide a <Directory> section to allow access to
289     # the filesystem path.
290 
291     #
292     # ScriptAlias: This controls which directories contain server scripts. 
293     # ScriptAliases are essentially the same as Aliases, except that
294     # documents in the target directory are treated as applications and
295     # run by the server when requested rather than as documents sent to the
296     # client.  The same rules about trailing "/" apply to ScriptAlias
297     # directives as to Alias.
298     #
299  ScriptAlias /cgi-bin/ "D:/wamp/Apache2/cgi-bin/"
300 
301 </IfModule>
302 
303 #
304 # "C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin" should be changed to whatever your ScriptAliased
305 # CGI directory exists, if you have that configured.
306 #
307 <Directory "D:/wamp/apache2/cgi-bin">
308     AllowOverride None
309     Options None
310     Order allow,deny
311     Allow from all
312 </Directory>
313 
314 # 
315 # Apache parses all CGI scripts for the shebang line by default.
316 # This comment line, the first line of the script, consists of the symbols
317 # pound (#) and exclamation (!) followed by the path of the program that 
318 # can execute this specific script.  For a perl script, with perl.exe in
319 # the C:\Program Files\Perl directory, the shebang line should be:
320 
321    #!c:/program files/perl/perl
322 
323 # Note you _must_not_ indent the actual shebang line, and it must be the
324 # first line of the file.  Of course, CGI processing must be enabled by 
325 # the appropriate ScriptAlias or Options ExecCGI directives for the files 
326 # or directory in question.
327 #
328 # However, Apache on Windows allows either the Unix behavior above, or can
329 # use the Registry to match files by extention.  The command to execute 
330 # a file of this type is retrieved from the registry by the same method as 
331 # the Windows Explorer would use to handle double-clicking on a file.
332 # These script actions can be configured from the Windows Explorer View menu, 
333 # 'Folder Options', and reviewing the 'File Types' tab.  Clicking the Edit
334 # button allows you to modify the Actions, of which Apache 1.3 attempts to
335 # perform the 'Open' Action, and failing that it will try the shebang line.
336 # This behavior is subject to change in Apache release 2.0.
337 #
338 # Each mechanism has it's own specific security weaknesses, from the means
339 # to run a program you didn't intend the website owner to invoke, and the
340 # best method is a matter of great debate.
341 #
342 # To enable the this Windows specific behavior (and therefore -disable- the
343 # equivilant Unix behavior), uncomment the following directive:
344 #
345 #ScriptInterpreterSource registry
346 #
347 # The directive above can be placed in individual <Directory> blocks or the
348 # .htaccess file, with either the 'registry' (Windows behavior) or 'script' 
349 # (Unix behavior) option, and will override this server default option.
350 #
351 
352 #
353 # DefaultType: the default MIME type the server will use for a document
354 # if it cannot otherwise determine one, such as from filename extensions.
355 # If your server contains mostly text or HTML documents, "text/plain" is
356 # a good value.  If most of your content is binary, such as applications
357 # or images, you may want to use "application/octet-stream" instead to
358 # keep browsers from trying to display binary files as though they are
359 # text.
360 #
361 DefaultType text/plain
362 
363 <IfModule mime_module>
364     #
365     # TypesConfig points to the file containing the list of mappings from
366     # filename extension to MIME-type.
367     #
368     TypesConfig conf/mime.types
369 
370     #
371     # AddType allows you to add to or override the MIME configuration
372     # file specified in TypesConfig for specific file types.
373     #
374     #AddType application/x-gzip .tgz
375     #
376     # AddEncoding allows you to have certain browsers uncompress
377     # information on the fly. Note: Not all browsers support this.
378     #
379     #AddEncoding x-compress .Z
380     #AddEncoding x-gzip .gz .tgz
381     #
382     # If the AddEncoding directives above are commented-out, then you
383     # probably should define those extensions to indicate media types:
384     #
385     AddType application/x-compress .Z
386     AddType application/x-gzip .gz .tgz
387     AddType application/x-httpd-php .php
388     AddType application/x-httpd-php .php3
389     #
390     # AddHandler allows you to map certain file extensions to "handlers":
391     # actions unrelated to filetype. These can be either built into the server
392     # or added with the Action directive (see below)
393     #
394     # To use CGI scripts outside of ScriptAliased directories:
395     # (You will also need to add "ExecCGI" to the "Options" directive.)
396     #
397     #AddHandler cgi-script .cgi
398 
399     # For type maps (negotiated resources):
400     #AddHandler type-map var
401 
402     #
403     # Filters allow you to process content before it is sent to the client.
404     #
405     # To parse .shtml files for server-side includes (SSI):
406     # (You will also need to add "Includes" to the "Options" directive.)
407     #
408     #AddType text/html .shtml
409     #AddOutputFilter INCLUDES .shtml
410 </IfModule>
411 
412 #
413 # The mod_mime_magic module allows the server to use various hints from the
414 # contents of the file itself to determine its type.  The MIMEMagicFile
415 # directive tells the module where the hint definitions are located.
416 #
417 #MIMEMagicFile conf/magic
418 
419 #
420 # Customizable error responses come in three flavors:
421 # 1) plain text 2) local redirects 3) external redirects
422 #
423 # Some examples:
424 #ErrorDocument 500 "The server made a boo boo."
425 #ErrorDocument 404 /missing.html
426 #ErrorDocument 404 "/cgi-bin/missing_handler.pl"
427 #ErrorDocument 402 http://localhost/subscription_info.html
428 #
429 
430 #
431 # EnableMMAP and EnableSendfile: On systems that support it, 
432 # memory-mapping or the sendfile syscall is used to deliver
433 # files.  This usually improves server performance, but must
434 # be turned off when serving from networked-mounted 
435 # filesystems or if support for these functions is otherwise
436 # broken on your system.
437 #
438 #EnableMMAP off
439 #EnableSendfile off
440 
441 # Supplemental configuration
442 #
443 # The configuration files in the conf/extra/ directory can be 
444 # included to add extra features or to modify the default configuration of 
445 # the server, or you may simply copy their contents here and change as 
446 # necessary.
447 
448 # Server-pool management (MPM specific)
449 #Include conf/extra/httpd-mpm.conf
450 
451 # Multi-language error messages
452 #Include conf/extra/httpd-multilang-errordoc.conf
453 
454 # Fancy directory listings
455 #Include conf/extra/httpd-autoindex.conf
456 
457 # Language settings
458 #Include conf/extra/httpd-languages.conf
459 
460 # User home directories
461 #Include conf/extra/httpd-userdir.conf
462 
463 # Real-time info on requests and configuration
464 #Include conf/extra/httpd-info.conf
465 
466 # Virtual hosts
467 #Include conf/extra/httpd-vhosts.conf
468 
469 # Local access to the Apache HTTP Server Manual
470 #Include conf/extra/httpd-manual.conf
471 
472 # Distributed authoring and versioning (WebDAV)
473 #Include conf/extra/httpd-dav.conf
474 
475 # Various default settings
476 #Include conf/extra/httpd-default.conf
477 
478 # Secure (SSL/TLS) connections
479 #Include conf/extra/httpd-ssl.conf
480 #
481 # Note: The following must must be present to support
482 #       starting without SSL on platforms with no /dev/random equivalent
483 #       but a statically compiled-in mod_ssl.
484 #
485 <IfModule ssl_module>
486 SSLRandomSeed startup builtin
487 SSLRandomSeed connect builtin
488 </IfModule>
489 
490 
491 Include "D:/wamp/apache2/conf/alias/phpmyadmin.conf"
492 Include "D:/wamp/apache2/conf/alias/sqlitemanager.conf"
493 Include "D:/wamp/apache2/conf/alias/hongten.conf"

2,写自己的第一个php小程序

环境搭建好了,就可以写自己的第一个php小程序了

开发工具的选择:

  有很多开发工具可供你选择:EditPlus,记事本,eclipse for php等等

在这里我推荐使用:eclipse-php-helios-win32.zip

下载地址:http://archive-mirror.eclipse.org/technology/epp/downloads/release/helios/R/eclipse-php-helios-win32.zip

这对有java开发经验的同志来说应该是好事儿.....

下面是我的第一个php小程序:helloworld.php

1 <?php
2 echo "helloworld!";
3 ?>

在浏览器的地址栏上面输入:http://localhost:2000/helloworld.php 运行效果:

helloworld!

=================================================

大功告成!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏菩提树下的杨过

spring cloud 学习(10) - 利用springfox集成swagger

对绝大多数程序员而言,写接口文档是一件痛苦的事情,相对文档,他们更愿意写代码。最理想的情况就是:代码即文档!服务开发完成后,部署上去文档就自动生成,没错,这就是...

34270
来自专栏数据库新发现

Oracle诊断案例-Spfile案例一则

情况说明: 系统:SUN Solaris8 数据库版本:9203 问题描述:工程人员报告,数据库在重新启动时无法正常启动.检查发现UNDO表空间丢失. 问题诊断...

9930
来自专栏杨建荣的学习笔记

关于CPU使用率高的awr分析(r8笔记第46天)

今天看到一个报警信息,大体是CPU使用异常。 ZABBIX-监控系统: ------------------------------------ 报警内容: ...

33950
来自专栏10km的专栏

cmake:vs2015/MinGW静态编译leveldb

leveldb是google的开源项目(https://github.com/google/leveldb), 在linux下编译很方便,然而官方版本却没有提供...

60160
来自专栏技术博文

Linux命令英文全称

su:Swith user  切换用户,切换到root用户 cat: Concatenate  串联 uname: Unix name  系统名称 df: Di...

40050
来自专栏数据库新发现

Use EMC powermt to solve PowerPath Problem

http://www.eygle.com/unix/Use.EMC.Powermt.Solve.Config.Problem.htm

14430
来自专栏杨建荣的学习笔记

关于exp statistics的问题和简单测试(82天)

在数据导出的时候,可能会碰到EXP-00091: Exporting questionable statistics.的问题,有时候会让人有点摸不到头脑,不知道...

23580
来自专栏杨建荣的学习笔记

外部表的导入导出问题 (41天)

今天尝试了一下用exp导出外部表,碰到了一些问题。 ----导出 今天导出的时候发现一个严重的问题,导出一个很小的外部表花了很长时间,最后还是报错,而且生成的d...

36750
来自专栏逍遥剑客的游戏开发

做了Nebula3的应用程序向导

12830
来自专栏Hadoop实操

Yarn的JobHistory目录权限问题导致MapReduce作业异常

0: jdbc:hive2://localhost:10000>select count(*) from student;

1.6K70

扫码关注云+社区

领取腾讯云代金券