我想在我的Mac上运行一些PHP,取消注释httpd.conf,激活网络共享,安装MySQL等。 我似乎无法找到我的PHP文件,最重要的是,PHP.ini。
在我的旧机器上,它位于/ usr / local / php5 / lib中 但是/ usr / local中不存在php5目录..
我需要获得一个包裹,还是我找不到错误的地方?
运行OS X 10.7.3,PHP 5.3.8,Apache / 2.2.21
答案 0 :(得分:365)
如果存在,您应该在/ private / etc中找到它,否则:
sudo cp /private/etc/php.ini.default /private/etc/php.ini
答案 1 :(得分:336)
答案 2 :(得分:45)
在终端执行php -i | grep php.ini
。
应该给你一些线索;)
答案 3 :(得分:25)
正如所指出的,php --ini
命令将告诉您PHP希望找到php.ini文件的位置。
对于标准安装,它可能正在寻找/etc/php.ini
如果您使用过 macports ,那么PHP可能正在寻找/opt/local/etc/php5/php.ini
答案 4 :(得分:23)
/etc/php.ini
文件完全丢失了,直到我在Web服务器上运行phpinfo()
我才发现没有配置文件。从/etc/php.ini.default
复制文件并将完全限定路径添加到mcrypt.so
库到配置文件解决了问题:
cp /etc/php.ini.default /etc/php.ini
然后在/etc/php.ini
中添加以下行(使用mcrypt.so
文件的正确路径):
extension="/usr/local/Cellar/php54-mcrypt/5.4.29/mcrypt.so"
然后重启Apache2:
apachectl restart
答案 5 :(得分:18)
从任何文件运行phpinfo()
,它会告诉您它在哪里。这是一个截图。
答案 6 :(得分:11)
我有不止一次的PHP运行实例,所以其他答案对我不起作用。这样做了:
创建一个PHP文件并在浏览器中打开其本地URL:
<?php phpinfo(); ?>
PHP.INI路径将靠近顶部列出。
答案 7 :(得分:3)
这是一个相当古老的主题,但我想补充一点澄清。
如果您的系统具有多个PHP安装(如我所做的那样),那么使用命令行工具获得的结果可能与Web服务器实际使用的结果不同。如果您对Web服务器使用的PHP感兴趣,请仅使用从使用'phpinfo()'函数的网页收集的信息。
例如,在我的系统中,两种不同方法报告的版本是:
命令行:5.3.26
网址:5.3.13
对于php.ini文件路径,情况也不同:
命令行:/private/etc/php.ini
Web:/long/path/to/the/file/php.ini
你可以使用这个找到所有可能的php.ini文件:
find / -name php.ini 2&gt;&amp; 1 | grep -v“拒绝”| grep -v“目录”
('2&gt;&amp; 1'和'grep'元素只是将命令的输出限制为有用的信息,即摆脱错误信息)
在我的系统上,我找到了3个INI文件。因为我对Web服务器使用的内容感兴趣,所以我知道应该使用从Web页面结果返回的路径。我对那里列出的php.ini文件进行了更改,重新启动了apache,并重新运行了网页;那里展示了新的编辑。
重新启动apache:
sudo apachectl -k restart
- J
答案 8 :(得分:2)
在OSX / MacOS上,在“终端”窗口中执行以下操作:
在提示符下运行php --ini
,方法是输入它并按Enter键
报告类似以下内容: 配置文件(php.ini)路径:/ etc 加载的配置文件:(无) 在/ Library / Server / Web / Config / php中扫描其他.ini文件 解析的其他.ini文件:(无)
...这是因为在/ etc中有一个名为/etc/php.ini.default的文件作为示例,并显示未使用该文件。您需要将该文件复制到php期望的名称,以便可以编辑它,如下所示:
类型:
$ sudo cp /etc/php.ini.default /etc/php.ini (and enter your password)
...然后您将看到是否再次运行php --ini
,现在它会看到您的新文件:
在提示符下键入:php --ini
时应报告以下内容:
Configuration File (php.ini) Path: /etc
Loaded Configuration File: /etc/php.ini
Scan for additional .ini files in: /Library/Server/Web/Config/php
Additional .ini files parsed: (none)
......现在编辑/etc/php.ini-您要确保以下几行(不是以分号';'开头的同一行)如下:
log_errors = On
(这将打开日志记录引擎)
然后,在本节中:
; Log errors to specified file. PHP's default behavior is to leave this value
; empty.
; http://php.net/error-log
; Example:
;error_log = php_errors.log
; Log errors to syslog (Event Log on Windows).
;error_log = syslog
如果您想登录系统日志(或Windows上的Windows事件日志),则;error_log = syslog
应该成为error_log = syslog
但是,如果您要登录到文件,则可以取消注释,方法是删除前导半冒号以使;error_log = php_errors.log
变为error_log = php_errors.log
或使用完整路径将其放置在所需位置
祝你好运
答案 9 :(得分:1)
我从“Hello World!”开始,一旦我在浏览器中显示,我会在其中抛出一个phpinfo();
,你可以看到所有的东西。告诉你加载了哪些配置,一切。
<?php
echo 'Hello World!';
phpinfo();
答案 10 :(得分:1)
1- 查找 FileUpload tb = (FileUpload)FormView1.FindControl("FileUpload1");
DynamicControl tb1 = (DynamicControl)FormView1.FindControl("text1");
tb.SaveAs(Server.MapPath("~/images/slider/") +Path.GetFileName(tb.FileName));
string link = "~/images/slider/" + Path.GetFileName(tb.FileName);
tb1.DataField.ToString(link); /*here i want to pass the value of link in tb1*/
位置路径
打开终端并运行命令
.ini
2- 复制此路径 php --ini
并通过命令打开它
/usr/local/etc/php/7.4/php.ini
3- 使用键盘组合 Ctrl+X 进行更改并退出以退出 nano
4- 完成后运行 nano /usr/local/etc/php/7.4/php.ini
答案 11 :(得分:0)
您运行phpinfo()并查看以下行:)
Loaded Configuration File /Applications/XAMPP/xamppfiles/etc/php.ini
答案 12 :(得分:0)
这是在Mac中修改正确的php.ini
的完整方法。
php --ini
找出ini的位置,这将显示以下内容: Configuration File (php.ini) Path: /usr/local/etc/php/7.4
Loaded Configuration File: /usr/local/etc/php/7.4/php.ini
Scan for additional .ini files in: /usr/local/etc/php/7.4/conf.d
Additional .ini files parsed: /usr/local/etc/php/7.4/conf.d/ext-opcache.ini
php.ini
打开sudo vi /usr/local/etc/php/7.4/php.ini
:wq
退出sudo apachectl restart
您所做的更改应该正确反映出来:)