คำถามติดแท็ก php

PHP เป็นภาษาสคริปต์วัตถุประสงค์ทั่วไปที่เหมาะอย่างยิ่งสำหรับการพัฒนาเว็บ คู่มือออนไลน์เป็นแหล่งข้อมูลที่ยอดเยี่ยมสำหรับไวยากรณ์ภาษาและมีรายการฟังก์ชั่นในตัวและส่วนขยายที่กว้างขวาง ส่วนขยายส่วนใหญ่สามารถพบได้ใน PECL

5
ติดตั้ง PHP7 จาก Remi repo
ฉันติดตั้ง PHP7 จาก Remi repo ด้วย sudo yum -y install httpd sudo yum -y install epel-release wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm sudo rpm -Uvh remi-release-6*.rpm sudo yum -y --enablerepo=remi,remi-test install php70 scl enable php70 'php -v' sudo ln -s /usr/bin/php70 /usr/bin/php และมันทำงานผ่าน CLI ตอนนี้ฉันต้องการให้มันทำงานกับ apache แต่ฉันไม่สามารถหาได้ดังนั้นจึงผ่านเป็นอาร์กิวเมนต์ที่สองเพื่อ LoadModule LoadModule php7_module unknown_path <FilesMatch \.php$> SetHandler …
13 php  centos6 

1
Apache .htaccess <ถ้าโมดูลไม่ได้รับอนุญาตที่นี่
ใช้ Apache บน Ubuntu แม่นยำด้วย PHP 5.5 พยายามเข้าถึงของฉันvar/www/ให้ฉัน 500 /var/log/apache2/error.log แสดงให้เห็นว่า: /var/www/web/.htaccess: &lt;IfModule not allowed here . htacess ของฉันคือ: DirectoryIndex app.php &lt;IfModule mod_rewrite.c&gt; RewriteEngine On RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$ RewriteRule ^(.*) - [E=BASE:%1] RewriteCond %{ENV:REDIRECT_STATUS} ^$ RewriteRule ^app\.php(/(.*)|$) %{ENV:BASE}/$2 [R=301,L] RewriteCond %{REQUEST_FILENAME} -f RewriteRule .? - [L] RewriteRule .? %{ENV:BASE}/app.php [L] …

5
งาน cron การเก็บขยะของ Ubuntu สำหรับเซสชัน PHP ใช้เวลา 25 นาทีทำไม?
Ubuntu มีการตั้งค่างาน cron ซึ่งค้นหาและลบเซสชัน PHP เก่า: # Look for and purge old sessions every 30 minutes 09,39 * * * * root [ -x /usr/lib/php5/maxlifetime ] \ &amp;&amp; [ -d /var/lib/php5 ] &amp;&amp; find /var/lib/php5/ -depth -mindepth 1 \ -maxdepth 1 -type f -cmin +$(/usr/lib/php5/maxlifetime) ! -execdir \ fuser -s …

1
Apache MPMs - Worker vs Prefork
ฉันพยายามคิดว่า Apache MPM ที่ดีที่สุดที่ฉันสามารถติดตั้งบน VPS ของฉันได้คืออะไร ฉันเห็นมาตรฐานและ MPM Worker ทำงานได้ดีกว่า Prefork แต่ด้วยเหตุผลบางอย่างที่ทุกคนแนะนำให้ใช้ Prefork มากกว่า Worker สำหรับการตั้งค่า PHP นี่เป็นเพราะฟังก์ชั่น PHP บางอันไม่ปลอดภัยต่อเธรดหรือไม่? เพียง แต่setlocale()มาถึงใจ แต่ฉันจะใช้สถานที่เดียวกันในทุกกรณีดังนั้นผมจึงไม่คิดว่าจะเป็นปัญหา VPS ของฉันมีหน่วยความจำน้อยและฉันรู้สึกว่า MPM ของคนงานจะเหมาะกับความต้องการของฉันมากขึ้น แต่ฉันไม่แน่ใจ บางคนสามารถช่วยฉันตัดสินใจเรื่องนี้ได้ไหม ขอบคุณ! PS:ฉันก็ดู nginx และ lighttpd nginx ดูยอดเยี่ยม แต่ฉันพยายามหลีกเลี่ยงการคอมไพล์จากแหล่งที่มาและฉันยังไม่เข้าใจว่า php-fpm มีไว้เพื่ออะไร เกี่ยวกับ lighttpd - มันง่ายอย่างเหลือเชื่อในการติดตั้ง PHP / FCGI ด้วย แต่ฉันได้ยินมาว่าหน่วยความจำรั่ว สิ่งนี้ยังคงเป็นจริงหรือไม่?

3
รับ log of mail ที่ส่งพร้อมเมล () จาก PHP (sendmail?)
หลังจากเซิร์ฟเวอร์บางตัวเปลี่ยนการกำหนดค่า PHP ของเราได้รับการอบซึ่งทำให้รายการจดหมายขนาดใหญ่ของลูกค้าหมดเวลาบางส่วนผ่านที่อยู่ประมาณ 4,000 แห่งหรือมากกว่า เราต้องการหลีกเลี่ยงการส่งจดหมายที่ซ้ำกันให้มากที่สุดและเรามีรายชื่อผู้รับจดหมายดั้งเดิม จดหมายถูกส่งโดยใช้mail()ฟังก์ชั่นของ PHP ซึ่งใช้sendmailซึ่งระบุว่าใช้งานEximอยู่ ฉันเห็นคำสั่ง: sendmail -bp ซึ่งให้รายการจดหมายที่ปรากฏขึ้นให้ฉัน รายการนี้ไม่ใหญ่มากและอาจแม่นยำ (หมายถึงสคริปต์หมดเวลาหลังจากส่งอีเมลเพียงหนึ่งร้อยหรือมากกว่านั้น) เป็นsendmail -bpวิธีที่ดีที่สุดที่จะได้รับรายชื่อนี้ แก้ไข:ฉันไม่สามารถหาmail.logไฟล์ใด ๆใน/var/log/mail.logหรือผ่านlocate mail.logแต่ WHM ดูเหมือนว่าจะมีข้อมูลบางอย่างเกี่ยวกับเรื่องนี้
13 linux  php  email  sendmail  exim 

4
เปลี่ยนค่าเริ่มต้นจากที่อยู่จาก Postfix จาก www-data เป็นอย่างอื่น
การตั้งค่า Postfix และ Apache / PHP บนเซิร์ฟเวอร์ Ubuntu ขณะนี้เมลกำลังออกไปตกลงกับชื่อโดเมนที่ถูกต้อง แต่ชื่อที่แสดงในส่วนท้องถิ่นจะเป็น "www-data" เสมอเนื่องจากฉันสมมติว่า Postfix ใช้ชื่อผู้ใช้เป็นค่าเริ่มต้น ในไฟล์ php.ini ฉันสามารถเปลี่ยนsendmail_pathไปเป็นได้sendmail_path = "/usr/sbin/sendmail -t -i -f support@example.com"แต่ชื่อที่แสดงอีเมลยังคงปรากฏเป็นข้อมูล www ฉันพยายามระบุชื่อที่แสดงด้วยวิธีที่ต่างกันเล็กน้อย แต่นั่นก็ถูกละเว้นและจดหมายก็ยังคงเป็นข้อมูล www สิ่งที่ฉันต้องการจะทำคือโดยค่าเริ่มต้นมีจดหมายที่หายไปจากกลับเส้นทางและอื่น ๆ ส่วนหัวออกไปเป็น"Example Support" &lt;support@example.com&gt;แต่ฉันไม่แน่ใจว่าเป็นไปได้

3
ไม่ได้ส่งความยาวเนื้อหาเมื่อเปิดใช้งานการบีบอัด gzip ใน Apache?
ฉันขอขอบคุณที่ช่วยให้เข้าใจพฤติกรรมของ Apache นี้ ฉันกำลังสื่อสารกับ PHP จากแอป iPhone Objective-C ใน application / json การบีบอัด Gzip เปิดใช้งานบนเซิร์ฟเวอร์และลูกค้าร้องขอ จาก. htaccess ของฉัน: AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-httpd-php application/json สำหรับคำขอขนาดเล็ก Apache กำลังตั้งค่าส่วนหัว 'ความยาวเนื้อหา' ตัวอย่างเช่น (ค่าเหล่านี้เป็นเอาต์พุตใน Objective-C จากส่วนหัว): Connection = "Keep-Alive"; "Content-Encoding" = gzip; "Content-Length" = 185; &lt;------------- "Content-Type" = "application/json"; Date = "Wed, 22 …

12
ใน Ubuntu ฉันทำการเปลี่ยนแปลง php.ini แต่ไม่มีอะไรเกิดขึ้น
สวัสดี Apache ที่มี php ทำงานได้ดี แต่ไม่มีการเปลี่ยนแปลงใด ๆ ที่ฉันทำใน php.ini มีผลฉันลบเนื้อหาทั้งหมดของไฟล์จากนั้นเริ่ม Apache ใหม่และรัน phpinfo () และน่าแปลกใจที่ทุกอย่างทำงานได้ดี ไฟล์ที่ฉันแก้ไขเป็นไฟล์ที่ปรากฏใน phpinfo () เช่น "Loaded Configuration File" (/etc/php5/apache2/php.ini) PS ฉันใช้ Ubuntu 9.04 และ PHP 5.2 รายละเอียดเพิ่มเติม: ฉันรีสตาร์ทด้วย sudo /etc/init.d/apache2 รีสตาร์ทฉันยังลอง sudo /etc/init.d/apache2 หยุดแล้วเริ่มเมื่อเริ่มฉันจะได้รับ: การรีสตาร์ทเว็บเซิร์ฟเวอร์ apache2 apache2: ไม่สามารถกำหนดชื่อโดเมนที่ผ่านการรับรองโดยสมบูรณ์ของเซิร์ฟเวอร์โดยใช้ 127.0.1.1 สำหรับ ServerName ... กำลังรอ apache2: ไม่สามารถกำหนดชื่อโดเมนที่ผ่านการรับรองโดยสมบูรณ์ของเซิร์ฟเวอร์โดยใช้ 127.0.1.1 …
13 linux  apache-2.2  ubuntu  php 

4
Windows Server 2012 R2 มีพอร์ตชั่วคราว แต่ก็ไม่ควรพอ
เราประสบปัญหาแปลก ๆ กับเครือข่ายบนเซิร์ฟเวอร์เฉพาะของเราเป็นประจำ มันรัน Windows Server 2012 R2 x64 บน Xeon E5620 พร้อม RAM ขนาด 16 GB และอะแดปเตอร์เครือข่าย Intel 82575EB โปรดทราบว่าเราได้ปรับHKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parametersค่าคีย์TcpTimedWaitDelayและMaxUserPortถึง 30 และ 65530 ตามลำดับแล้ว เมื่อถึงเวลาสุ่มเว็บไซต์ของเราหยุดตอบสนองสาเหตุที่พวกเขาไม่สามารถเชื่อมต่อกับฐานข้อมูลท้องถิ่นได้ จะใช้เวลาประมาณ 2 สัปดาห์เมื่อปัญหานี้เริ่มเกิดขึ้น บันทึกของระบบเริ่มได้รับการเตือน TCPIP 4227 และ 4231.It ระบุว่า "การร้องขอเพื่อจัดสรรหมายเลขพอร์ตชั่วคราวจากพื้นที่พอร์ต TCP ทั่วโลกล้มเหลวเนื่องจากพอร์ตดังกล่าวทั้งหมดถูกใช้งานอยู่" ถ้าฉันวิ่ง Get-Counter -Counter \TCPv4\* หรือ Get-Counter -Counter \TCPv6\* หรือ netstat -abn | …

1
PHP Hostname ไม่ถูกต้อง
เรามีแอปพลิเคชันที่ทำงานมาแล้วประมาณ 2 ปีโดยไม่มีปัญหา เมื่อเช้านี้เมื่อฉันเข้ามาในเว็บไซต์ได้รับข้อผิดพลาด: Session: connection failed ฉันตรวจสอบการเชื่อมต่อฐานข้อมูลตรวจสอบผู้ใช้ตรวจสอบเงินช่วยเหลือสำหรับผู้ใช้ทุกอย่างดูดี ฉันสร้างหน้าทดสอบโดยใช้ข้อมูลการเชื่อมต่อในไฟล์. inc.xml มีข้อผิดพลาดในการเชื่อมต่อ mysql นี่คือไฟล์ต้นฉบับ: &lt;TYPE&gt;mysql&lt;/TYPE&gt; &lt;HOST&gt;dbl&lt;/HOST&gt; &lt;USER&gt;dbuser&lt;/USER&gt; &lt;PASSWORD key="PUT A KEY HERE TO DECRYPT THE PASSWORD"&gt;password&lt;/PASSWORD&gt; ชื่อโฮสต์ของเซิร์ฟเวอร์ไม่ใช่ dbl ฉันเปลี่ยนบรรทัดที่สองเป็น: &lt;TYPE&gt;mysql&lt;/TYPE&gt; &lt;HOST&gt;localhost&lt;/HOST&gt; &lt;USER&gt;dbuser&lt;/USER&gt; &lt;PASSWORD key="PUT A KEY HERE TO DECRYPT THE PASSWORD"&gt;password&lt;/PASSWORD&gt; มันเชื่อมต่อได้ดี ทำการเปลี่ยนแปลงเดียวกันกับไฟล์. inc.xml ดั้งเดิมและแอปพลิเคชันสำรองและทำงานได้ดี คำถามของฉัน: ฉันตรวจสอบบันทึกการตรวจสอบการเชื่อมต่อแบบสอบถามระบบไม่ได้รับการเข้าถึงประมาณ 3 สัปดาห์ . inc.xml …
12 php  redhat  httpd 

2
วิธีการติดตั้งห้องสมุด GD ใน PHP?
เมื่อฉันพยายามใช้ฟังก์ชั่น imagefromjpeg () ใน PHP มันเกิดข้อผิดพลาดดังนั้นฉันพยายามติดตั้งไลบรารี GD โดยใช้คำสั่งต่อไปนี้: sudo apt-get install php5-gd แต่ฉันได้รับข้อผิดพลาดดังต่อไปนี้ php5-gd : Depends: php5-common (= 5.5.9+dfsg-1ubuntu4) but 5.5.10+dfsg-1+deb.sury.org~saucy+1 is to be installed E: Unable to correct problems, you have held broken packages. ฉันใช้ Ubuntu 14.04LTS ฉันเพิ่งอัพเกรดระบบปฏิบัติการจาก Ubuntu 13.10 จะเอาชนะข้อผิดพลาดนี้ได้อย่างไร? ผลลัพธ์ของdpkg -l|grep php คือ: ii cakephp 1.3.15-1 all …
12 ubuntu  php  gd 

1
เหตุใดจึงไม่ใช่ช่างฝีมือ PHP ของ laravel ที่ให้บริการเซิร์ฟเวอร์ที่สามารถเข้าถึงได้จาก WWW บน IIS
ฉันมีแอปพลิเคชัน laravel ที่ทำงานผ่านเซิร์ฟเวอร์ laravel artisan : php artisan serve และทำงานได้ดีถ้าฉันไปlocalhost:8000.. นอกจากนี้ฉันเพิ่มกฎขาเข้าในเซิร์ฟเวอร์ IIS เช่นนั้น: แผงควบคุม -&gt; เครื่องมือการดูแลระบบ -&gt; ไฟร์วอลล์ Windows ที่มีความปลอดภัยขั้นสูงกฎขาเข้า สร้างกฎใหม่ "อนุญาตพอร์ต, TCP, 8000, โปรไฟล์ทั้งหมด อย่างไรก็ตามด้วยเหตุผลบางอย่างฉันยังคงไม่สามารถเข้าถึงเว็บไซต์จาก WWW (ฉันทำตามขั้นตอนเดียวกันสำหรับเซิร์ฟเวอร์ webrick (ในเครื่องเดียวกัน) และสิ่งต่าง ๆ ทำงานได้อย่างสมบูรณ์แบบ) .. มีความคิดอะไรบ้าง?

1
nginx rewrite ของฉันกำลังดาวน์โหลดไฟล์ php
ฉันมีกฎการเขียนซ้ำต่อไปนี้ที่ฉันพยายาม: location / { index index.php index.html; rewrite ^/test$ /test.php break; } และฉันก็มี: location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; include fastcgi_params; fastcgi_param SCRIPT_FILENAME /home/sites/default$fastcgi_script_name; fastcgi_index index.php; } ไฟล์ php ปกติใช้งานได้ แต่ดูเหมือนว่าการเปลี่ยนเส้นทางของฉันเป็นเพียงการดาวน์โหลดไฟล์ php ที่ฉันเปลี่ยนเส้นทางไปแทนที่จะแยกวิเคราะห์ ฉันกำลังคิดถึงอะไร ฉันได้รับไฟล์ที่โหลดแทนที่จะดาวน์โหลดโดยใส่ fastcgi ในบล็อกตำแหน่งแรก แต่ก็ยังไม่ได้แยกวิเคราะห์เป็น php
12 php  nginx  rewrite 

6
ทำไมไฟล์ PHP ถึงถูกดาวน์โหลดแทนที่จะประมวลผลโดย Nginx
ฉันได้เห็นปัญหาเดียวกันและความละเอียดหลายประการที่ชี้ไปที่การเพิ่มตัวจัดการประเภท แต่นั่นก็สำหรับ Apache ฉันใช้ Arch Linux, Nginx, PHP และ PHP-FMP และฉันไม่สามารถหาสาเหตุที่ไฟล์ php ดาวน์โหลดแทนที่จะทำงาน นี่คือ nginx.conf ของฉัน: #user http; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # …
12 php  nginx  php-fpm 

8
นี่เป็นความพยายามในการแฮ็กหรือไม่
เมื่อดูบันทึก 404 รายการของฉันฉันสังเกตเห็น URL สองรายการต่อไปนี้ซึ่งทั้งคู่เกิดขึ้นครั้งเดียว: /library.php=../../../../../../../../../../../../../../../../../../../../../../../../proc/self/environ และ /library.php=../../../../../../../../../../../../../../../../../../../../../../../../proc/self/environ%00 หน้าคำถามlibrary.phpต้องใช้typeตัวแปรที่มีค่าที่ยอมรับได้แตกต่างกันครึ่งโหลแล้วจึงเป็นidตัวแปร ดังนั้น URL ที่ถูกต้องอาจเป็น library.php?type=Circle-K&amp;id=Strange-Things-Are-Afoot และรหัสทั้งหมดจะถูกเรียกใช้mysql_real_escape_stringก่อนที่จะถูกใช้เพื่อสอบถามฐานข้อมูล ฉันเป็นมือใหม่ แต่สำหรับฉันแล้วดูเหมือนว่าลิงก์ทั้งสองนี้เป็นการโจมตีแบบง่าย ๆ กับ webroot? 1)วิธีที่ดีที่สุดในการป้องกันสิ่งต่าง ๆ เหล่านี้นอกเหนือจาก 404 2)ฉันควรอนุญาต IP ที่รับผิดชอบหรือไม่ แก้ไข:เพิ่งสังเกตเห็นสิ่งนี้ /library.php=http://www.basfalt.no/scripts/danger.txt แก้ไข 2: IP ที่ละเมิดสำหรับการโจมตีทั้ง 3 ครั้งนั้น216.97.231.15มีร่องรอยของ ISP ที่เรียกว่า Lunar Pages ซึ่งอยู่นอกลอสแองเจลิส แก้ไข 3:ฉันตัดสินใจโทร ISP ตามเวลาท้องถิ่นในเช้าวันศุกร์และหารือเกี่ยวกับปัญหากับใครก็ตามที่ฉันสามารถโทรศัพท์ได้ ฉันจะโพสต์ผลลัพธ์ที่นี่ภายใน 24 ชั่วโมงหรือมากกว่านั้น แก้ไข 4:ฉันสิ้นสุดการส่งอีเมลผู้ดูแลระบบของพวกเขาและพวกเขาตอบก่อนว่า "พวกเขากำลังมองหามัน" และจากนั้นอีกหนึ่งวันต่อมากับ …
12 security  mysql  php  hacking 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.